####spring bean的生命周期
spring IOC的生命周期可以管理bean的生命周期,spring可以在bean的生命周期的特定点执行定制任务
spring IOC的容器对bean的生命周期进行管理的过程:
- 通过构造器 或者工厂方法进行创建bean的实例
- 为bean的属性设置值和对其他的bean的引用
- 调用bean的初始化方法
- bean可以使用了
- 打开bean的销毁方法
<bean id="user" class="com.mvc.model.User" init-method="initTest" destroy-method="destroyTest"></bean>
package com.mvc.model;
import java.io.Serializable;
public class User implements Serializable{
/**
*
*/
private static final long serialVersionUID = 1L;
private int userId;
private String userName;
private String userTel;
private int userAccount;
private int userLevel;
public User(int userId, String userName, String userTel, int userAccount,
int userLevel) {
super();
this.userId = userId;
this.userName = userName;
this.userTel = userTel;
this.userAccount = userAccount;
this.userLevel = userLevel;
}
public User() {
super();
System.out.println("User constraret start");
}
public int getUserId() {
return userId;
}
public void setUserId(int userId) {
this.userId = userId;
}
public String getUserName() {
return userName;
}
public void setUserName(String userName) {
this.userName = userName;
}
public String getUserTel() {
return userTel;
}
public void setUserTel(String userTel) {
this.userTel = userTel;
}
public int getUserAccount() {
return userAccount;
}
public void setUserAccount(int userAccount) {
this.userAccount = userAccount;
}
public int getUserLevel() {
return userLevel;
}
public void setUserLevel(int userLevel) {
this.userLevel = userLevel;
}
@Override
public String toString() {
return "User [userId=" + userId + ", userName=" + userName
+ ", userTel=" + userTel + ", userAccount=" + userAccount
+ ", userLevel=" + userLevel + "]";
}
public void initTest(){
System.out.println("init test start");
}
public void destroyTest(){
System.out.println("destory test end ");
}
}