spring案列——xml配置
一、需要的jar包
spring.jar(官网下载)
commons-logging.jar
二、项目结构
三、entity(实体类)
package com.team.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
package com.team.dao; import com.team.model.User; public interface UserDAO { public void save(User user); }
package com.team.dao; import com.team.model.User; public class UserDAOImpl implements UserDAO{ @Override public void save(User user) { System.out.println("保存"); } }
五、service
package com.team.service; import com.team.model.User; public interface UserService { public void add(User user); }
package com.team.service; import com.team.dao.UserDAO; import com.team.model.User; public class UserServiceImpl implements UserService{ private 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="u" class="com.team.dao.UserDAOImpl"></bean> <bean id="userService" class="com.team.service.UserServiceImpl" > <property name="userDAO" ref="u"></property> </bean> </beans>
七、test
package com.team.service; import static org.junit.Assert.*; import org.junit.Test; import org.omg.CORBA.portable.ApplicationException; import org.springframework.context.ApplicationContext; import org.springframework.context.support.ClassPathXmlApplicationContext; import com.team.model.User; public class UserServiceTest { @Test public void testAdd() { //ApplicationContext继承BeanFactory(最根) //BeanFactory有的功能,ApplicationContext也有,并且能控制bean的生命周期(BeanFactory不能) //ClassPathXmlApplicationContext()可以放置多个配置文件String[] 比如配置UserService 、TeacherService 多人开发有利 ApplicationContext ac=new ClassPathXmlApplicationContext("beans.xml"); UserService userService=(UserService) ac.getBean("userService"); User u=new User(); userService.add(u); } }
八、效果