(十二)Beans自动装配(Auto-Wiring)
来源:互联网 发布:医保控费软件 编辑:程序博客网 时间:2024/05/18 02:44
Spring容器提供了不使用<constructor>和<property>自动装配协作的beans的关系的功能,这样可以帮助你在编写基于Spring的大型应用时减小XML配置的大小。
五种自动注入的模式:
no:这是一种默认的设置方式,即不自动装配属性,而是使用显示的方式来明确指定属性的引用。也就是使用<property>标签来指定需要引用的属性。
byName:通过属性名称来自动装配所需要的属性。如果beans的标签中指定了autowire的属性值为“byName”,会被Spring容器发现。Spring容器会尝试在配置文件中查找一个名称相同的已经注册的beans来自动装配。(我们可以通过设置autowire的值为byName来自动注入需要的属性,但是这种方式需要注意的是,属性的名称必须与已经注册过的bean的名称一致;)
byType:通过属性的数据类型来自动装配所需要的属性。如果beans的标签中指定了autowire的属性值为“byType”,会被Spring容器发现。容器会尝试在配置文件中匹配一个与所需类型一致的已经注册的bean,但是如果存在多个符合要求的bean,就会严重的异常信息抛出。
constructor:这个与byType像是,但是该属性值指定的参数类型是由构造器的参数决定的。如果没有符合要求的bean存在,则会抛出严重的错误。
default:指定该参数值之后,容器会首先使用constructor的方式自动装配,如果不起作用,则会使用byType的方式自动装配。
可以通过byType和constructor的方式来自动装配数组和集合类型。
自动装配的局限性:
如果不经常使用自动装配功能,这种方式可能会给开发人员带来迷惑。虽然,自动装配功能能够显著减少配置属性和构造器参数的工作量,但是我们在使用该功能之前还是要权衡一下该功能的局限性和缺点:
被覆盖的可能性:如果用了自动装配的同时又指定了<constructor-arg>和<property>配置,那么自动装配功能将会被覆盖;
不能自动装配简单的数据类型:不能自动装配简单数据类型,如原生类型(int,float,double,boolean等原生类型),String类型和类。
本质模糊:自动装配功能没有显示指定的方式明确,所以应该竟可能的使用显示指定的方式。
五种自动注入的模式:
no:这是一种默认的设置方式,即不自动装配属性,而是使用显示的方式来明确指定属性的引用。也就是使用<property>标签来指定需要引用的属性。
byName:通过属性名称来自动装配所需要的属性。如果beans的标签中指定了autowire的属性值为“byName”,会被Spring容器发现。Spring容器会尝试在配置文件中查找一个名称相同的已经注册的beans来自动装配。(我们可以通过设置autowire的值为byName来自动注入需要的属性,但是这种方式需要注意的是,属性的名称必须与已经注册过的bean的名称一致;)
byType:通过属性的数据类型来自动装配所需要的属性。如果beans的标签中指定了autowire的属性值为“byType”,会被Spring容器发现。容器会尝试在配置文件中匹配一个与所需类型一致的已经注册的bean,但是如果存在多个符合要求的bean,就会严重的异常信息抛出。
constructor:这个与byType像是,但是该属性值指定的参数类型是由构造器的参数决定的。如果没有符合要求的bean存在,则会抛出严重的错误。
default:指定该参数值之后,容器会首先使用constructor的方式自动装配,如果不起作用,则会使用byType的方式自动装配。
可以通过byType和constructor的方式来自动装配数组和集合类型。
自动装配的局限性:
如果不经常使用自动装配功能,这种方式可能会给开发人员带来迷惑。虽然,自动装配功能能够显著减少配置属性和构造器参数的工作量,但是我们在使用该功能之前还是要权衡一下该功能的局限性和缺点:
被覆盖的可能性:如果用了自动装配的同时又指定了<constructor-arg>和<property>配置,那么自动装配功能将会被覆盖;
不能自动装配简单的数据类型:不能自动装配简单数据类型,如原生类型(int,float,double,boolean等原生类型),String类型和类。
本质模糊:自动装配功能没有显示指定的方式明确,所以应该竟可能的使用显示指定的方式。
0 0
- (十二)Beans自动装配(Auto-Wiring)
- Spring Auto-Wiring Beans
- Spring Auto-Wiring Beans
- Spring学习笔记 使用XML配置实现Bean的auto-wiring (自动绑定)
- Spring学习笔记 使用annotation配置实现Bean的auto-wiring (自动绑定)
- Spring auto wire(自动装配) 的 五种方式
- Spring auto wire(自动装配) 的 五种方式
- Spring auto wire(自动装配) 的 五种方式
- Spring auto wire(自动装配) 的 五种方式
- Spring auto wire(自动装配) 的 五种方式
- 学好spring系列之Wiring Bean(装配Bean)
- Spring(9)-Spring Auto-Wiring Beans with @Autowired annotation
- Spring之 Auto-Wiring All Beans of Compatible Type
- Spring Beans 自动装配 使用XML配置列子(带源码)
- Spring Boot自动配置(Auto-Configuration),@EnableAutoConfiguration,Spring Beans和依赖注入
- 4、自动装配(autowire)
- Spring自动装配(注解)
- Struts2自动装配(+入门)
- C++ string使用for改变为何必须使用引用
- 心性的刚强,男人
- Laravel 学习笔记——路由(路由与控制器)
- SSL握手过程详解
- 工作需要学习的东西之 telnet
- (十二)Beans自动装配(Auto-Wiring)
- 阻止事件冒泡\阻止默认行为
- 常用OpenCV 2.0库函数速查和OpenCV 3.0函数索引
- Spring Url映射
- Tomcat并发数优化和设置
- 两步搞掉电脑开机密码
- 创建表空间和追加脚本
- Oracle 存储过程、游标、函数
- 处理HTTP响应(响应码、响应头、请求重定向、自动刷新/跳转)