构造方法然后我们要知道数据的类型大体分为两种:
- 引入类型(数据层)
- 简单类型(基本数据类型和String)
所以我们把依赖注入方式分为四种:
setter注入简单类型首先我们需要在bean种定义简单类型属性并提供可以访问的set方法
package com.itheima.dao.impl;import com.itheima.dao.BookDao;public class BookDaoImpl implements BookDao {private String databaseName;private int connectionNum;//setter注入需要提供要注入对象的set方法public void setConnectionNum(int connectionNum) {this.connectionNum = connectionNum;}//setter注入需要提供要注入对象的set方法public void setDatabaseName(String databaseName) {this.databaseName = databaseName;}public void save() {System.out.println("book dao save ..."+databaseName+","+connectionNum);}}
然后在配置中使用property标签value属性注入简单类型数据
<?xml version="1.0" encoding="UTF-8"?><beans xmlns="http://www.springframework.org/schema/beans"xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"xsi:schemaLocation="http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans.xsd"><!--注入简单类型--><bean id="bookDao" class="com.itheima.dao.impl.BookDaoImpl"><!--property标签:设置注入属性--><!--name属性:设置注入的属性名,实际是set方法对应的名称--><!--value属性:设置注入简单类型数据值--><property name="connectionNum" value="https://www.huyubaike.com/biancheng/100"/><property name="databaseName" value="https://www.huyubaike.com/biancheng/mysql"/></bean></beans>
setter注入引用类型首先我们需要在bean种定义引用类型属性并提供可以访问的set方法
package com.itheima.service.impl;import com.itheima.dao.BookDao;import com.itheima.dao.UserDao;import com.itheima.service.BookService;public class BookServiceImpl implements BookService{private BookDao bookDao;private UserDao userDao;//setter注入需要提供要注入对象的set方法public void setUserDao(UserDao userDao) {this.userDao = userDao;}//setter注入需要提供要注入对象的set方法public void setBookDao(BookDao bookDao) {this.bookDao = bookDao;}public void save() {System.out.println("book service save ...");bookDao.save();userDao.save();}}
然后在配置中使用property标签ref属性注入引用类型数据
<?xml version="1.0" encoding="UTF-8"?><beans xmlns="http://www.springframework.org/schema/beans"xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"xsi:schemaLocation="http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans.xsd"><bean id="bookDao" class="com.itheima.dao.impl.BookDaoImpl"><property name="connectionNum" value="https://www.huyubaike.com/biancheng/100"/><property name="databaseName" value="https://www.huyubaike.com/biancheng/mysql"/></bean><bean id="userDao" class="com.itheima.dao.impl.UserDaoImpl"/><!--注入引用类型--><bean id="bookService" class="com.itheima.service.impl.BookServiceImpl"><!--property标签:设置注入属性--><!--name属性:设置注入的属性名,实际是set方法对应的名称--><!--ref属性:设置注入引用类型bean的id或name--><property name="bookDao" ref="bookDao"/><property name="userDao" ref="userDao"/></bean></beans>
构造器注入简单类型(了解)在bean中定义简单类型属性并提供可访问的set方法
public class BookDaoImpl implements BookDao{ private int connectionNumber;pubilc void setConnectionNumber(int connectionNumber){this.connectionNumber = connectionNumber;}}
配置中使用constructor-arg标签value属性注入简单类型数据
<?xml version="1.0" encoding="UTF-8"?><beans xmlns="http://www.springframework.org/schema/beans"xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"xsi:schemaLocation="http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans.xsd"><bean id="bookDao" class="com.itheima.dao.impl.BookDaoImpl">根据构造方法参数名称注入<constructor-arg name="connectionNum" value="https://www.huyubaike.com/biancheng/10"/></bean><bean id="userDao" class="com.itheima.dao.impl.UserDaoImpl"/></beans>
构造器注入引用类型(了解)在bean中定义引用类型属性并提供可访问的构造方法
public class BookDaoImpl implements BookDao{ private BookBao bookBao;pubilc void setConnectionNumber(int connectionNumber){this.bookBao = bookBao;}}
配置中使用constructor-arg标签ref属性注入简单类型数据
推荐阅读
-
-
当下的语文教材,叫好者有之,质疑者同样有之。你怎么看呢?
-
-
-
-
-
税控盘减免后的增值税怎么计提 税控盘减免的增值税怎么做账
-
-
王者荣耀秋分时节活动攻略-秋分时节时间与奖励一览推荐阅读
-
-
-
-
-
-
2022年8月9日宝宝出生的五行缺什么 沙石金开执位属五行
-
关于替嫁后 我被病娇总裁宠上了简述 替嫁后 我被病娇总裁宠上了
-
-
-
-