可配置的AOP框架中两个重要的类:
BeanFactory
工厂类BeanFactory负责创建目标或代理类的实例对象,并通过配置文件进行切换,其getBean()方法根据参数字符串返回一个相应的实例对象,如果参数字符串在配置文件中对应的类名不是ProxyFactoryBean(根据本例子),则直接返回该类的实例对象,否则返回该类实例对象的getProxy()方法返回的对象。
BeanFac...
分类:
编程语言 时间:
2015-03-15 13:56:45
阅读次数:
194
简单的说,Spring就是通过工厂+反射将我们的bean放到它的容器中的,当我们想用某个bean的时候,只需要调用getBean("beanID")方法即可。
原理简单说明:
Spring容器的原理,其实就是通过解析xml文件,通过反射创建出我们所需要的bean,再将这些bean挨个放到集合中,然后对外提供一个getBean()方法,以便我们获得这bean。
下面我们来简单...
分类:
编程语言 时间:
2015-03-10 14:04:28
阅读次数:
211
singleton---单例模式单例模式,在spring 中其实是scope(作用范围)参数的缺省设定值每个bean定义只生成一个对象实例,每次getBean请求获得的都是此实例单例模式分为饿汉模式和懒汉模式饿汉模式spring singleton的缺省是饿汉模式:启动容器时(即实例化容器时),为所...
分类:
编程语言 时间:
2015-03-06 18:44:46
阅读次数:
151
在大型的应用中,常常会有很灵活的需求,而在使用了框架之后,虽然可以大大提高开发的效率,但同时,也把我们框到一个架子中了。
下面先说一下我遇到的问题,事情大概是这样的:@Component
@Scope("prototype")
public class Action1 implements Action{
.....
}@Component
@Scope("prototype")
publi...
分类:
编程语言 时间:
2015-02-06 16:43:43
阅读次数:
215
ApplicationContext ac1 = new FileSystemXmlApplicationContext("com/spark/system/applicationContext.xml");//如果配置文件放在文件系统的目录下则优先使用该方式
//com/spark/system/applicationContext.xml等价于"file:com/spark/system/a...
分类:
移动开发 时间:
2015-02-04 13:04:21
阅读次数:
227
错误写法: cxt = new ClassPathXmlApplicationContext(); productService = (ProductService)cxt.getBean("productTypeServiceBean"); 正确写法: cxt = n...
分类:
编程语言 时间:
2015-02-03 13:03:02
阅读次数:
794
Spring在web应用中获得Bean的方法 实现getBean方法...
分类:
编程语言 时间:
2015-01-20 17:58:09
阅读次数:
267
默认在启动spring容器的时候,spring容器配置文件中的类就已经创建完成对象了在中添加属性lazy-init,默认值为false。 true 在context.getBean的时候才要创建对象 * 优点 如果该bean中有大数据存在,则什么时候context.getBean,什么时...
分类:
编程语言 时间:
2015-01-14 21:12:24
阅读次数:
181
今天碰到一个问题,我的一个工具类提供了几种静态方法,静态方法需要另外一个类的实例提供处理,因此就写出了这样的代码:Class Util{ private static XXX xxx; xxx = BeanUtil.getBean("xxx"); public static void meth...
分类:
编程语言 时间:
2015-01-08 09:36:01
阅读次数:
253
Spring中Bean的命名
1、每个Bean可以有一个id属性,并可以根据该id在IoC容器中查找该Bean,该id属性值必须在IoC容器中唯一;
2、可以不指定id属性,只指定全限定类名,如:
此时需要通过接口getBean(Class requiredType)来获取Bean;
如果该Bean找不到则抛异常:NoSuchBeanDefinitionExceptio...
分类:
编程语言 时间:
2015-01-07 11:00:56
阅读次数:
205