实体类为User
package com.cc.model;
public class User {
private String username;
private String password;
public String getUsername() {
return username;
}
public void setUsername(String username) {
this.username = username;
}
public String getPassword() {
return password;
}
public void setPassword(String password) {
this.password = password;
}
}
创建DAO接口UserDAO
package com.cc.dao;
import com.cc.model.User;
public interface UserDAO {
public void save(User user);
}
实现接口UserDAOImpl
package com.cc.dao.impl;
import com.cc.dao.UserDAO;
import com.cc.model.User;
public class UserDAOImpl implements UserDAO {
private int daoid;
public int getDaoid() {
return daoid;
}
public void setDaoid(int daoid) {
this.daoid = daoid;
}
public void save(User user) {
System.out.println("user saved!");
}
@Override
public String toString(){
return "daoid="+daoid;
}
}
UserService类
package com.cc.service;
import com.cc.dao.UserDAO;
import com.cc.model.User;
public class UserService {
private UserDAO userDAO;
public void init(){
System.out.println("UserService.init()..");
}
public void destory(){
System.out.println("UserService.destroy()..");
}
public UserService(){
}
public UserService(UserDAO userDAO) {
super();
this.userDAO = userDAO;
}
public void add(User user) {
userDAO.save(user);
}
public UserDAO getUserDAO() {
return userDAO;
}
public void setUserDAO(UserDAO userDAO) {
this.userDAO = userDAO;
}
}
配置文件beans.xml
<?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-2.5.xsd">
<!-- <bean id="userDAO" class="com.cc.dao.impl.UserDAOImpl"> -->
<!-- <property name="daoid" value="1" /> -->
<!-- </bean> -->
<bean id="userDAO2" class="com.cc.dao.impl.UserDAOImpl">
<property name="daoid" value="2" />
</bean>
<bean id="userService" class="com.cc.service.UserService" autowire="byType"
init-method="init" destroy-method="destroy">
<!-- <property name="userDAO" ref="userDAO1" /> -->
</bean>
</beans>
测试
package com.bjsxt.service;
import org.junit.Test;
import org.springframework.context.ApplicationContext;
import org.springframework.context.support.ClassPathXmlApplicationContext;
import com.cc.model.User;
//Dependency Injection
//Inverse of Control
public class UserServiceTest {
@Test
public void testAdd() throws Exception {
ApplicationContext ctx = new ClassPathXmlApplicationContext("beans.xml");
UserService service = (UserService)ctx.getBean("userService");
System.out.println(service.getUserDAO().toString());
}
}