4.生命周期
初始化:@PostConstruct
销毁:@PreDestroy
5.作用域
@Scope(“prototype”) 多例
配置文件就不贴和前两篇的配置文件是一样的。
注解类:
package com.fly.spring;
import javax.annotation.PostConstruct;
import javax.annotation.PreDestroy;
import org.springframework.context.annotation.Scope;
import org.springframework.stereotype.Service;
@Service("person")
//@Scope("prototype")
public class Person{
public void addUser() {
System.out.println("d_scope add lifecycle");
}
@PostConstruct
public void myInit(){
System.out.println("初始化");
}
@PreDestroy
public void myDestroy(){
System.out.println("销毁");
}
}
测试代码:
package com.itheima.g_annotation.c_other;
import org.junit.Test;
import org.springframework.context.ApplicationContext;
import org.springframework.context.support.ClassPathXmlApplicationContext;
public class TestOther {
@Test
public void demo02(){
//spring 工厂
String xmlPath = "com/fly/spring/applicationContext.xml";
ClassPathXmlApplicationContext applicationContext = new ClassPathXmlApplicationContext(xmlPath);
Person person= applicationContext.getBean("person" ,Person .class);
Person person2 = applicationContext.getBean("person" ,Person .class);
System.out.println(person);
System.out.println(person2);
applicationContext.close();
}
}