1. @PostConstruct
- 该注解作用于方法
package javax.annotation;
@Documented
@Retention (RUNTIME)
@Target(METHOD)
public @interface PostConstruct {
}
2. @PreDestroy
- 该注解作用于方法
package javax.annotation;
@Documented
@Retention (RUNTIME)
@Target(METHOD)
public @interface PreDestroy {
}
3. Spring Bean 初始化和销毁
3.1 Java 注解:@PostConstruct, @PreDestroy
@Component
@Slf4j
public class UserConfig {
@PostConstruct
public void init() {
log.info("UserConfig init...");
}
@PreDestroy
public void destroy() {
log.info("UserConfig destroy...");
}
}
3.2 xml 配置方式
3.3 @Bean 注解方式
@Configuration
public class BusinessManager {
@Bean(name = "userConfig", initMethod="init",destroyMethod="destroy")
public UserConfig userConfig(){
return new UserConfig();
}
}
@Slf4j
public class UserConfig {
public void init() {
log.info("UserConfig init...");
}
public void destroy() {
log.info("UserConfig destroy...");
}
}
4. 案例
@Slf4j
public class UserConfig {
private final List shopList = new CopyOnWriteArrayList();
public List getShopList() {
return shopList;
}
public UserConfig() {
log.info("UserConfig Constructor....");
}
public void init() {
log.info("UserConfig init...");
}
public void destroy() {
log.info("Spring IoC容器关闭, UserConfig destroy...");
}
@PostConstruct
public void initBean() {
log.info("UserConfig initBean...");
}
@PreDestroy
public void destroyBean() {
log.info("Spring IoC容器关闭, UserConfig destroyBean ...");
}
}
@Configuration
public class BusinessManager {
@Bean(name = "userConfig", initMethod="init",destroyMethod="destroy")
public UserConfig userConfig(){
return new UserConfig();
}
}
打印日志:
2024-01-28 15:38:17.769 INFO 7245 --- [ main] c.e.concrete.starter.config.UserConfig : UserConfig Constructor....
2024-01-28 15:38:17.770 INFO 7245 --- [ main] c.e.concrete.starter.config.UserConfig : UserConfig initBean...
2024-01-28 15:38:17.770 INFO 7245 --- [ main] c.e.concrete.starter.config.UserConfig : UserConfig init...
2024-01-28 15:38:41.011 INFO 7245 --- [ionShutdownHook] c.e.concrete.starter.config.UserConfig : Spring IoC容器关闭, UserConfig destroyBean ...
2024-01-28 15:38:41.011 INFO 7245 --- [ionShutdownHook] c.e.concrete.starter.config.UserConfig : Spring IoC容器关闭, UserConfig destroy...
【信息由网络或者个人提供,如有涉及版权请联系COOY资源网邮箱处理】
© 版权声明
本平台(www.cooy.cn)的一切软件、教程及内容信息仅限用于学习和研究,付费仅为收集整理归类费用;
不得将上述内容用于商业或者非法用途,否则一切后果用户自行承担负责。本平台资源、内容、信息均来自来自用户上传,版权争议及其他问题与本平台无关。
您必须在下载后的24个小时之内从您的电脑或手机中彻底删除上述下载内容,如果您喜欢该程序或内容,请支持正版以获取更好的服务。我们非常重视版权问题,如有侵权请发送邮件至下方邮件(655465@qq.com),敬请谅解!
如发现违法违规内容,请联系下方邮箱举报,我们收到后将会第一时间处理。
THE END
暂无评论内容