当前位置: 首页 > news >正文

springDI注入

一. 含义

 DI:Dependency Injection,依赖注入,在Spring框架负责创建Bean对象时,动态的将依赖对象注入到Bean组件中!!

二. 注入条件与方式

编写属性时提供该属性的set方法,提供注入口

// 编写成员属性,一定需要提供该属性的set方法private OrderDao orderDao;// 一定需要提供该属性的set方法,IOC容器底层就通过属性的set方法方式注入值public void setOrderDao(OrderDao orderDao) {this.orderDao = orderDao;}
​// 消息private String msg;// 年龄private int age;
​public void setMsg(String msg) {this.msg = msg;}
​public void setAge(int age) {this.age = age;}<!--DI:依赖注入--><bean id="os" class="com.qcbyjy.service.OrderServiceImpl"><property name="orderDao" ref="od" /><property name="msg" value="你好" /><property name="age" value="30" /></bean><bean id="od" class="com.qcbyjy.dao.OrderDaoImpl"></bean>

另一种注入方式:构造方法式注入

 // 名称private String cname;// 金额private Double money;
​public Car(String cname, Double money) {this.cname = cname;this.money = money;}<bean id="car" class="com.qcbyjy.demo2.Car"><constructor-arg name="cname" value="大奔" /><constructor-arg name="money" value="400000" /></bean>

数组,集合(List,Set,Map),Properties等的注入

 private String [] strs;public void setStrs(String[] strs) {this.strs = strs;}
​private List<String> list;public void setList(List<String> list) {this.list = list;}
​private Map<String,String> map;public void setMap(Map<String, String> map) {this.map = map;}
​private Properties properties;public void setProperties(Properties properties) {this.properties = properties;}
​<bean id="collectionBean" class="com.qcbyjy.demo3.CollectionBean"><property name="strs"><array><value>美美</value><value>小凤</value></array></property><property name="list"><list><value>熊大</value><value>熊二</value></list></property><property name="map"><map><entry key="aaa" value="老王"/><entry key="bbb" value="小王"/></map></property><property name="properties"><props><prop key="username">root</prop><prop key="password">123456</prop></props></property></bean>

三. 多配置文件

在工厂创建实例的时候可以使用多个application.xml文件,有两种方式

1.在主配置文件中写入<import resource="applicationContext2.xml"/>,

例如如下代码则在application.xml中写入<import resource="applicationContext2.xml"/>

ApplicationContext applicationContext = new ClassPathXmlApplicationContext(
"applicationContext.xml");

2.使用多个配置文件

ApplicationContext applicationContext = new ClassPathXmlApplicationContext(
"applicationContext.xml","applicationContext2.xml");

http://www.dtcms.com/a/557771.html

相关文章:

  • Service层的使用 - Spring框架 - IOC
  • 多语言网站开发公司佛山国外网站开发
  • 感恩节火鸡大餐
  • ppt做书模板下载网站有哪些网站建设翻译
  • 【电子元器件·11】PN结;耗尽区;PN结的伏安特性曲线(重要)
  • 边界扫描测试原理 14 -- BSDL 8 用户提供的 VHDL 包
  • Rust所有权(下):引用、借用与切片
  • 2025年江西省职业院校技能大赛高职组“区块链技术应用”任务书(6卷)
  • 编译tiff:arm64-linux-static报错 Could NOT find CMath (missing: CMath_pow)
  • SYN关键字辨析,各种锁优缺点分析和面试题讲解
  • 3.1.2.Python基础知识
  • Qt中使用图表库
  • LV.5 文件IO
  • 做目录网站注意沧县网络推广公司
  • 技术准备十五:Elasticsearch
  • 专门做面包和蛋糕的网站山东家居行业网站开发
  • linux挂载新硬盘并提供nfs服务
  • 用asp做宠物网站页面做地方行业门户网站需要什么资格
  • 交易网站建设需要学什么软件电商网站建设济南建网站
  • Python实现从数组B中快速找到数组A中的元素及其索引
  • 高效IT学习指南:用「智能复盘系统」突破学习瓶颈
  • 广东省白云区贵阳seo网站建设
  • 粉色大气妇科医院网站源码彭阳门户网站建设
  • 507-Spring AI Alibaba Graph Human Node 功能完整案例
  • 遥感生态指数(RSEI):理论发展、方法论争与实践进展
  • cjson 的资源释放函数
  • 第6讲:常用基础与布局Widget(一):Container, Row, Column
  • 什么是网站建设塑业东莞网站建设
  • 小企业网站建设哪里做得好深圳网站搭建
  • 婚恋网站策划页面设计好吗