Chinaunix首页 | 论坛 | 博客
  • 博客访问: 107555
  • 博文数量: 41
  • 博客积分: 0
  • 博客等级: 民兵
  • 技术积分: 352
  • 用 户 组: 普通用户
  • 注册时间: 2013-09-23 12:37
文章分类

全部博文(41)

文章存档

2015年(1)

2014年(28)

2013年(12)

我的朋友

分类: Web开发

2014-08-31 16:52:35

1.Spring实现了工厂模式的工厂类(在这里有必要解释清楚什么是工厂模式),这个类名为
BeanFactory(实际上是一个接口),在程序中通常BeanFactory的子类ApplicationContext。
Spring相当于一个大的工厂类,在其配置文件中通过元素配置用于创建实例对象的
类名和实例对象的属性。
2. Spring提供了对IOC良好支持,IOC是一种编程思想,是一种架构艺术,利用这种思想
可以很好地实现模块之间的解耦。IOC也称为DI(Depency Injection),什么叫依赖注入呢?
譬如,Class Programmer

Computer computer =null;
public void code()

//Computercomputer = new IBMComputer();
//Computercomputer = beanfacotry.getComputer();
computer.write();

public voidsetComputer(Computer computer) 

this.computer= computer;


另外两种方式都由依赖,第一个直接依赖于目标类,第二个把依赖转移到工厂上,第三个彻
底与目标和工厂解耦了。在spring的配置文件中配置片段如下:
 

 


3. Spring提供了对AOP技术的良好封装, AOP称为面向切面编程,就是系统中有很多各
不相干的类的方法,在这些众多方法中要加入某种系统功能的代码,例如,加入日志,加入
权限判断,加入异常处理,这种应用称为AOP。实现AOP功能采用的是代理技术,客户端
程序不再调用目标,而调用代理类,代理类与目标类对外具有相同的方法声明,有两种方式
可以实现相同的方法声明,一是实现相同的接口,二是作为目标的子类在,JDK中采用Proxy
类产生动态代理的方式为某个接口生成实现类,如果要为某个类生成子类,则可以用CGLI 
B。在生成的代理类的方法中加入系统功能和调用目标类的相应方法,系统功能的代理以
Advice对象进行提供,显然要创建出代理对象,至少需要目标类和Advice类。spring提供
了这种支持,只需要在spring配置文件中配置这两个元素即可实现代理和aop功能,例如,
 



阅读(4461) | 评论(0) | 转发(0) |
给主人留下些什么吧!~~