连云港市建设局网站安全员考试深圳网站的网络公司
news/
2025/9/23 8:53:45/
文章来源:
连云港市建设局网站安全员考试,深圳网站的网络公司,阿里网站官网入口,工程师招聘网站一、概念 首先要了解一个思想就是IOC思想(控制反转)#xff0c;由此我们便需要使用DI(依赖注入)#xff0c;依赖注入可以注入对象、字符串、等等#xff0c;在注入对象时#xff0c;我们往往需要手动new一个对象进行注入#xff0c;自动装配就是代替我们手动new对象这一过…一、概念 首先要了解一个思想就是IOC思想(控制反转)由此我们便需要使用DI(依赖注入)依赖注入可以注入对象、字符串、等等在注入对象时我们往往需要手动new一个对象进行注入自动装配就是代替我们手动new对象这一过程。 二、实现过程 要想实现自动装配这一过程就要获得一个依赖对象但是对象并不会凭空生成那就一定需要一个创建对象的过程。那就在配置文件中设置一个依赖对象的bean方便到时候创建对象。 bean iduserDao classcom.xja.dao.impl.UserDaoImpl scopeprototype/
三、自动装配的方式
3.1 byName 通过寻找bean的id和参数名称一致的依赖对象的bean来完成自动装配如代码中所示需要setUserDao中的参数和bean标签中的id的名称一致才可以正常装配装配失败则会报空指针异常。 public void setUserDao(UserDao userDao){this.userDao userDao;} bean iduserDao classcom.xja.dao.impl.UserDaoImpl scopeprototype/
!-- bean classcom.xja.dao.impl.UserDao1Impl scopeprototype/--
!-- 局部设置--bean iduserService classcom.xja.service.UserService scopeprototype autowirebyName 3.2 byType 通过寻找bean的class和参数类型一致的bean来完成自动装配(不可重复)且只能自动装配一个(多个将报异常)如代码中所示需要setUserDao中的参数类型和bean标签中的class的类型一致才可以正常装配装配失败则会报空指针异常。 public void setUserDao(UserDao userDao){this.userDao userDao;} bean iduserDao classcom.xja.dao.impl.UserDaoImpl scopeprototype/
bean iduserService2 classcom.xja.service.UserService scopeprototype autowirebyType/
3.3 constructor 通过构造器来完成注入需要设置好需要注入的类的构造器。然后优先根据byName其次根据byType(不可重复)来完成依赖注入。 bean iduserService3 classcom.xja.service.UserService scopeprototype autowireconstructor/
四、全局自动装配 在装配时为了方便全局的自动装配方便可以设置默认自动装配方式(优先度小于在bean中设置的)。需要在beans中添加 default-autowirebyName 来完成自动装配的默认设置 beans xmlnshttp://www.springframework.org/schema/beansxmlns:xsihttp://www.w3.org/2001/XMLSchema-instancexmlns:phttp://www.springframework.org/schema/pxmlns:chttp://www.springframework.org/schema/cxmlns:contexthttp://www.springframework.org/schema/contextxsi:schemaLocationhttp://www.springframework.org/schema/beanshttp://www.springframework.org/schema/beans/spring-beans.xsdhttp://www.springframework.org/schema/context http://www.springframework.org/schema/context/spring-context-4.0.xsd default-autowirebyName
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/911961.shtml
如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!