12. context.close(); 13. } 14.} public class App { public static void main( String[] args ) { ConfigurableApplicationContext context = new ClassPathXmlApplicationContext(new String[] {"SpringConfig.xml"}); SimpleBean simple = (SimpleBean )context.getBean("simple"); System.out.println(simple.getName()); context.close(); } } 打印结果:
[plain] view plaincopyprint? 01.属性设置完后执行该方法 02.I'm a Simple Bean 03.结束前执行一些清理工作 属性设置完后执行该方法 I'm a Simple Bean 结束前执行一些清理工作
********************************************************************************************************************
方法二:利用JavaEE的注解@PostConstruct和@preDestroy。 [java] view plaincopyprint? 01.public class SimpleBean { 02. 03. private String name; 04. 05. public void setName(String name) { 06. this.name = name; 07. } 08. 09. public String getName() { 10. return name; 11. } 12. 13. @PostConstruct 14. public void initIt() { 15. System.out.println("属性设置完后执行该方法"); 16. } 17. 18. @PreDestroy 19. public void destroyIt() { 20. System.out.println("结束前执行一些清理工作"); 21. } 22.} public class SimpleBean {
private String name;
public void setName(String name) { this.name = name; }
public String getName() { return name; }
@PostConstruct public void initIt() { System.out.println("属性设置完后执行该方法"); }
@PreDestroy public void destroyIt() { System.out.println("结束前执行一些清理工作"); } }
为了让Spring容器意识到该注解,需要在配置文件中加上标签<context:annotation-config />。
[html] view plaincopyprint? 01.<?xml version="1.0" encoding="UTF-8"?> 02. 03.<beans 上一页 [1] [2] [3] [4] [5] 下一页
|