Spring 之 IoC 学习笔记

1.为了代码的灵活性,我们一般采用面向接口编程,使用接口定义变量。

2.使用XXXServer 对XXX进行统一的操作,XXXServer   调用  XXX  的  XXXDAOImpl方法进行数据库的操作,实现对数据操作的封装。 XXXDAOImpl  实现了  XXXDAO 接口。

当 有多个  XXXServer  时,采用更大的  工厂类 或者  配置文件进行  统一管理。

3.测试时,建立  相应的 test  文件夹。

4.Spring 配置文件中在读 bean 的时候是用的反射机制的jvm的.class文件(采用classLoader)在调用类的方法。

5.什么是I o C ?   (DI  依赖注入)

把要自己new的东西改为由容器来提供(初始化具体值,装配)

6.依赖注入的两种方式:setter注入、构造器注入

7.在bean中其实name属性和id属性是一样的。

8.Bean 中基本数据类型的注入,直接使用value=""或使用<property>的自标签<value>,这一般在配置数据库连接,写套接字时会用到。

9.Bean的范围:scope属性

常用的就singleton和prototype(原型)。

默认情况下,是singleton,拿到的都是同一个对象。如果设为prototype,则会新建一个bean对象。

谈及prototype作用域的bean时,在某些方面你可以将Spring容器的角色看作是Javanew操作符的替代者。

10.集合collection:

通过<list/>、<set/>、<map/>及<props/>元素可以定义和设置与JavaCollection类型对应List、Set、Map及Properties的值。

11.自动装配:autowire

常用的有byName  和byType:byName根据bean的name属性值去自动匹配bean,而byType会依据bean的数据类型去匹配,

当有两个或两个以上类型相同的bean的时候就会报错,所以要小心使用。

12.bean的生命周期:

     ApplicationContext实现的默认行为就是在启动时将所有singleton bean提前进行实例化。

     lazy-init="true"  延迟初始化bean。

    init-method="init"destroy-method="destroy" 不要与  scope="prototype"一起使用,Spring不能对一个prototype bean的整个生命周期负责:容器在初始化、配置、装饰或者是装配完一个prototype实例后,将它交给客户端,随后就对该prototype实例不闻不问了。不管何种作用域,容器都会调用所有对象的初始化生命周期回调方法,而对prototype而言,任何配置好的析构生命周期回调方法都将不会被调用。

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值