mybatis中的依赖注入DI

Spring 通过IOC实现对象的管理,而IOC的具体实现,依赖于DI依赖注入对对象的属性进行赋值。

DI 通过配置文件或注解的方式指定对象与对象之间的依赖关系,并依据该依赖关系对对象属性进行赋值。

DI依赖注入的方式:

1) set方法注入:类中的属性必须实现set方法。在bean标签中配置<property> 标签,指定set注入的依赖关系。(在xml配置中使用最多)

2) 构造器注入:类中定义带属性参数的构造方法,在bean中配置<constructor-arg> 配置构造器

3) 注解注入:在spring配置文件中指定开启注解,并在对应的类上添加注解。常用注解有:

a.        扫描bean的注解。相当于在xml中定义<bean>标签

a)       @Controller:用于控制层的注解。(整合Struts2/springmvc时,用来标注控制层类)

b)       @Service: 用于Service业务逻辑处理层的注解

c)        @Repository: 用于Dao层注解

d)       @Component :用于其他组件

b.       依赖注入的注解:写在属性上,或对应set方法上

a)       @Autowired:spring的注解,按照类型进行注入。

b)       @Resource:java提供的注解,默认根据名称注入(指定了name,则根据name,没指定name,则根据属性名),没有对应名称则按照类型注入。

c)        @Qualifier:配合@Autowired使用,指定注入对象的名称

c.        其他注解

a)       @Scope 指定对象的作用域(创建方式和生命周期)

i.         单例(默认的)singletion

ii.        Prototype:多实例(struts2)

iii.       Request: bean的生命周期与request请求一致(springmvc)

iv.       Session:bean的生命周期与session一致(springmvc)

v.        Global Session: application

b)       @PostConstruct: 初始化方法  ==>init-method

c)        @PreDestory:销毁方法     ==>destory-method

d)       @Lazy: 懒加载注解,指定spring容器加载时不去创建该对象。

猜你喜欢

转载自www.cnblogs.com/xie-qi/p/12934086.html