pom.xml
4.0.0
com.monkey1024
02_spring
0.0.1-SNAPSHOT
war
UTF-8
org.springframework
spring-context
5.0.4.RELEASE
junit
junit
3.8.1
test
02_spring
org.apache.maven.plugins
maven-compiler-plugin
1.8
1.8
UTF-8
applicationContext.xml
UserDao.java
package com.monkey1024.dao;
public interface UserDao {
void addUser();
}
UserDaoImpl.java
package com.monkey1024.dao.impl;
import com.monkey1024.dao.UserDao;
public class UserDaoImpl implements UserDao{
public void addUser(){
System.out.println("添加用户");
}
}
UserService.java
package com.monkey1024.service;
public interface UserService {
void addUser();
}
UserServiceImpl.java
package com.monkey1024.service.impl;
import com.monkey1024.dao.UserDao;
import com.monkey1024.service.UserService;
public class UserServiceImpl implements UserService {
private UserDao userDao;
//通过set方法进行注入
// public UserDao getUserDao(){
// return userDao;
// }
// public void setUserDao(UserDao userDao){
// this.userDao = userDao;
// }
//通过构造方法进行注入
public UserServiceImpl(UserDao userDao){
this.userDao = userDao;
}
public void addUser(){
//以前需要手动创建对象
//userDao = new UserDaoImpl();
userDao.addUser();
}
}
Test01.java
package com.monkey1024.test;
import org.junit.Test;
import org.springframework.context.ApplicationContext;
import org.springframework.context.support.ClassPathXmlApplicationContext;
import com.monkey1024.service.UserService;
public class Test01 {
@Test
public void testDI(){
ApplicationContext context = new ClassPathXmlApplicationContext("applicationContext.xml");
UserService userService = (UserService) context.getBean("userService");
userService.addUser();
}
}