项目结构
UserDAO.java
package com.fengqing.aaiconfigfile.dao;
public class UserDAO {
public void save(String username, String password){
System.out.println("username:" + username);
System.out.println("password:" + password);
}
}
UserService.java
package com.fengqing.aaiconfigfile.service;
import com.fengqing.aaiconfigfile.dao.UserDAO;
public class UserService {
private UserDAO userDAO;
public void setUserDAO(UserDAO userDAO) {
this.userDAO = userDAO;
}
public void addUser(String username, String password){
this.userDAO.save(username, password);
}
}
JavaConfig.java
package com.fengqing.aaiconfigfile.config;
import com.fengqing.aaiconfigfile.dao.UserDAO;
import com.fengqing.aaiconfigfile.service.UserService;
import org.springframework.context.annotation.Bean;
import org.springframework.context.annotation.Configuration;
@Configuration
public class JavaConfig {
@Bean
@Scope("prototype")
public UserDAO userDAO(){
UserDAO userDAO = new UserDAO();
return userDAO;
}
@Bean
public UserService userService() {
UserService userService = new UserService();
userService.setUserDAO(userDAO());
return userService;
}
}
AaiconfigfileApplicationTests.java
package com.fengqing.aaiconfigfile;
import com.fengqing.aaiconfigfile.config.JavaConfig;
import com.fengqing.aaiconfigfile.service.UserService;
import org.junit.Test;
import org.junit.runner.RunWith;
import org.springframework.boot.test.context.SpringBootTest;
import org.springframework.context.annotation.AnnotationConfigApplicationContext;
import org.springframework.test.context.junit4.SpringRunner;
@RunWith(SpringRunner.class)
@SpringBootTest
public class AaiconfigfileApplicationTests {
@Test
public void contextLoads() {
AnnotationConfigApplicationContext context = new AnnotationConfigApplicationContext(JavaConfig.class);
UserService userService = (UserService)context.getBean("userService");
userService.addUser("username", "password");
}
}