Spring_IOC_生命周期
1.目录结构

2.User
package com.cloud.spring.model; /** * @author cloud * @data 2016年5月13日 * @version 1.0 * @description:普通的JavaBean */ 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; } }
3.UserDAO
package com.cloud.spring.dao; import com.cloud.spring.model.User; /** * @author cloud * @data 2016年5月13日 * @version 1.0 * @description:定义接口,定义规范,必须实现save方法 */ public interface UserDAO { public void save(User user); }
4.UserDAOImpl
package com.cloud.spring.dao.imp; import com.cloud.spring.dao.UserDAO; import com.cloud.spring.model.User; /** * * @author cloud * @data 2016年5月13日 * @version 1.0 * @description:实现接口,重写方法 */ public class UserDAOImpl implements UserDAO { public void save(User user) { //Hibernate //JDBC //XML //NetWork System.out.println("user saved!"); } }
5.UserService
package com.cloud.spring.service; import com.cloud.spring.dao.UserDAO; import com.cloud.spring.model.User; /** * * @author cloud * @data 2016年5月13日 * @version 1.0 * @description:真正的业务处理 */ public class UserService { //bean初始化时调用的方法 private void init() { System.out.println("init"); } private UserDAO userDAO; public void add(User user) { userDAO.save(user); } public UserDAO getUserDAO() { return userDAO; } public void setUserDAO(UserDAO userDAO) { this.userDAO = userDAO; } //bean销毁时调用的方法 private void destroy(){ System.out.println("destroy"); } }
6.TestSpring
package com.cloud.spring.test; import org.springframework.beans.BeansException; import org.springframework.context.ApplicationContext; import org.springframework.context.support.ClassPathXmlApplicationContext; import com.cloud.spring.model.User; import com.cloud.spring.service.UserService; public class TestSpring { public static void main(String[] args) { try { ClassPathXmlApplicationContext ctx = new ClassPathXmlApplicationContext("beans.xml"); //生成bean时如果配置文件中配置了init-method那么将自动调用定义的方法 UserService service = (UserService) ctx.getBean("userService"); User user = new User(); service.add(user); //调用销毁上下文时同时也销毁了bean,如果配置文件中配置了destroy-method那么将自动调用定义的方法 ctx.destroy(); } catch (BeansException e) { e.printStackTrace(); } } }
7.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.xsd"> <!-- UserService 中有个实例域UserDAO,需要将UserDAOImp的一个实例注入到UserDAO中去 --> <bean id="userDAO" class="com.cloud.spring.dao.imp.UserDAOImpl" /> <!-- 在特定的bean上定义init方法和destroy方法 --> <bean id="userService" class="com.cloud.spring.service.UserService" init-method="init" destroy-method="destroy"> <property name="userDAO" ref="userDAO" /> </bean> </beans>
    http://www.cnblogs.com/makexu/

 
                
            
         
         浙公网安备 33010602011771号
浙公网安备 33010602011771号