您当前的位置: 首页 > 慢生活 > 程序人生 网站首页程序人生
15-Spring配置文件-依赖注入5
发布时间:2024-12-19 20:42:00编辑:雪饮阅读()
-
一般来说类内部声明了有参构造的时候同时要给无参构造,那么bean中除了通过setter方式注入,也支持通过有参构造进行注入。
所以我们的Spring Config配置文件可以如:
<?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="userDao" class="com.dao.impl.UserDaoImpl"></bean>
<bean id="userService" class="com.service.impl.UserServiceImplement">
<constructor-arg name="userDao" ref="userDao"></constructor-arg>
</bean>
</beans>
这里其中constructor-arg标签的name属性值对应构造函数的入参名称,ref就是这里id为对应的bean
所以我们的UserService的接口实现可以如:
package com.service.impl;
import com.dao.UserDao;
import com.service.UserService;
public class UserServiceImplement implements UserService {
private UserDao userDao;
public UserServiceImplement() {}
public UserServiceImplement(UserDao userDao) {
this.userDao = userDao;
}
public void save() {
userDao.save();
}
}
然后入口main函数的调用保持不变:
package com.web;
import com.service.UserService;
import org.springframework.context.ApplicationContext;
import org.springframework.context.support.ClassPathXmlApplicationContext;
public class Index {
public static void main(String[] args) {
ApplicationContext app=new ClassPathXmlApplicationContext("applicationContext.xml");
UserService userService= (UserService) app.getBean("userService");
userService.save();
}
}
关键字词:Spring