spring学习之Bean
Bean的实例化: 构造器实例化 静态工厂实例化 实例工厂实例化 Bean的作用域(常用两种): singleton:spring容器只会存在一个共享的Bean实例,只要id与该id属性相匹配,就会返回同一个Bean实例。适用于无会话状态(如Dao组件、Service组件)。 prototype:Spring容器会为每个对该Bean的请求都创建一个新的实例,适用于需要保持会话状态的Bean。 Bean的生命周期: Bean的装配(依赖关系注入)方式: 基于XML的装配 设值注入:<property>要求Bean类提供一个默认无参构造方法;并且必须腰围需要注入的属性提供setter方法。 构造注入:<constructor-arg>来定义构造方法的参数,可以使用其value属性来设置改参数的值。 基于Annotation(注解)的装配: @component:泛化表示一个Bean(可以代替2,3,4,但是用2,3,4,更准确) @Repository:用于数据访问层(Dao层)的表示 @Service:用于业务层(Service层) @Controller:用在控制层(Controller层) @Autowired:用于对Bean的属性变量、属性的setter方法及构造方法进行标注,配合对应注解完成Bean的自动装配,默认按照Bean类型装配 @Resource