关于Ioc中的 注入 与 装配
来源:互联网 发布:西南交通大学网络教学 编辑:程序博客网 时间:2024/06/05 09:27
文章1:详解依赖注入与自动装配
文章2:详解 Spring 3.0 基于 Annotation 的依赖注入实现
观点: 注入与装配是不同的两个过程.
( 注入 = 实例化 + 装配 )
一. 实例化:(有4种方式 构造器实例化,静态工厂实例化,实例工厂实例化,注解自动实例化)
(1) 实例化的是bean实体类. 笨重的方法就是用bean节点在xml中来注入咯,而精简的方式便是注解咯.
(下面就是注解的方式,注解后,在xml中扫描即可).
- @Repository (标识dao-Impl),
- @Service (标识service),
- @Controller (标识servlet或叫controller或action)
- @Component (标识model) <作用不明确,定义bean,当不好归类时,可用此注解>
- (注:自动扫描默认命名为类名首字母小写; 若带有name属性(例: @Controller(name="userAdd")),将使用该指定名).
(2) 那么为了把这么些个实体类扔进Ioc容器中 (这里要说,所谓的自动化智能都是假的,皆需人为),怎么整?
通过注解已经做好标记,便只需在applicationContext.xml中配个注解来主动扫描查找咯
<!-- 要先引入这个配置 -->
....
http://www.springframework.org/schema/context/spring-context-4.2.xsd
...
<beans ... >
....
<context:component-scan base-package="com.study.niubai">
<!-- 根包名(可多个用','隔开),默认将扫描其下及其子包的这些注解 -->
<context:include-filter type="annotation" expression="org.springframework.stereotype.Controller"/>
<!-- 标识要扫面的注解.(若自动扫描未关闭,此节点无用) -->
<context:exclude-filter type="annotation" expression="org.springframework.stereotype.Controller"/>
<!-- 标识不扫描的注解 -->
</context:component-scan>
....
</beans>
文章:Spring自动扫描装配Bean常用注解
二. 装配:(有3种方式 set装配,构造装配,注解自动装配)
(3) 既已注入实体类,必然就需要装配各种属性,方法啥的. 怎么装配呢?
这就用到常讲的set注入,构造注入,工厂注入.实则就是装配的不同罢了.也有注解自动装配.
(下面用的注解自动装配)
- @Autowired有五种模式 默认按类型匹配. 可写在成员属性或set()方法上.
属性:(required="true") //一定要找到对应的bean,否则抛异常;默认值true.
- @Qualifier("bean的名字") //与@Autowired连用. 解决按类型多匹配的异常问题.
例: @Autowired
@Qualifier("bean的名字")
- @Resource //默认按名称匹配. 当找不到名称时,再按类型匹配. JSR-330提供. 可写在成员属性或set()方法上.
属性:(name="注入的名称"). //若无name,则默认使用变量名;一般不写.
(注:按@Resource(name="beanName")注入,若无匹配bean,则不再按类型装配.)
- @Inject //(不用). 按类型装配. 功能比@Autowired少. JSR-330提供.
推文1:Spring容器中bean的作用域
作用域:
(有5种 看推文1,不赘述)
对于bean,在上面已经注入,也装配好了. 那么它该用在那里?
@Scope("prototype") //默认为singleton.
其他的注解也在此学习一下:
@PostConstruct //等价init-method. bean初始化时执行. 使用在方法上.
@PreDestroy //等价destroy-method. bean销毁时执行. 使用在方法上.
- 关于Ioc中的 注入 与 装配
- 关于IoC的 注入 与 装配
- Spring笔记(二):Ioc 之注入与装配
- 依赖注入与自动装配
- 依赖注入与自动装配
- IOC与依赖注入
- spring中IoC中的自动装配
- spring的ioc与注入
- Spring IOC与依赖注入
- 详解依赖注入与自动装配
- 控制反转IOC(依赖注入DI),注入类型,自动装配相关注解
- 关于Spring IOC (DI-依赖注入)
- spring、IoC控制反转和DI依赖注入入门、基于XML的Bean装配、基于注解的Bean装配
- AspectCore中的IoC容器和依赖注入
- AspectCore中的IoC容器和依赖注入
- Ioc - bean自动装配
- Spring IOC自动装配
- spring IOC装配bean
- 使用ueditor视频无法上传的问题
- 神经网络之激励函数(Activation Function)
- canvas中save和store函数的用法
- ACM 数论 Maximum GCD
- 【Modbus】 RTU CRC校验码计算方法
- 关于Ioc中的 注入 与 装配
- 微信小程序之为保障帐号安全不可使用此域名地址
- 8月8日云栖精选夜读:他的前半生是厨神_45岁却决定加入阿里巴巴
- iOS内存分配之堆和栈的区别
- dhcpd.conf配置
- 资讯精选 | 中美人工智能发展战略的异同检视:差距何在?如何超越?
- Unity3D 官方文档 UGUI总览 可互动组件的介绍
- 取消滚轮的按键功能
- 首次披露!拍立淘技术框架及核心算法_日均UV超千万