当前位置: 首页 > wzjs >正文

济南手机端建站模板网站建设价格标准报价单

济南手机端建站模板,网站建设价格标准报价单,沈阳市和平区网站建设,哪里找做网站的客户使用生命周期扩展接口(最灵活)​ 创建前拦截可以通过实现 InstantiationAwareBeanPostProcessor 接口的 postProcessBeforeInstantiation 方法,在Bean实例化前执行逻辑 在销毁前拦截可以通过实现 DestructionAwareBean 接口的 postProcessBe…

使用生命周期扩展接口(最灵活)​

创建前拦截可以通过实现 InstantiationAwareBeanPostProcessor 接口的 postProcessBeforeInstantiation 方法,在Bean实例化前执行逻辑
在销毁前拦截可以通过实现 DestructionAwareBean 接口的 postProcessBeforeDestruction 方法,在Bean销毁前执行逻辑

@Component
public class MyInstantiationInterceptor implements InstantiationAwareBeanPostProcessor {@Overridepublic Object postProcessBeforeInstantiation(Class<?> beanClass, String beanName) {if (beanClass == TargetBean.class) {System.out.println("【拦截】Bean实例化前操作:" + beanName);}return null; // 返回null表示继续默认实例化流程}
}@Component
public class MyDestructionInterceptor implements DestructionAwareBeanPostProcessor {@Overridepublic void postProcessBeforeDestruction(Object bean, String beanName) {if (bean instanceof MyResourceBean) {System.out.println("【拦截】Bean销毁前释放资源:" + beanName);((MyResourceBean) bean).release();}}
}

使用标准注解

通过 @PostConstruct 注解标记方法,在 Bean 属性注入完成后执行逻辑,通过 @PreDestroy 注解标记方法,在容器关闭时触发

@Component
public class MyBean {@PostConstructpublic void init() {System.out.println("Bean初始化完成,执行自定义逻辑");}@PreDestroypublic void cleanup() {System.out.println("Bean销毁前关闭数据库连接");}
}

我推荐使用这个,解耦还简洁

通过 XML 文件配置元数据

指定init-method和destroy-method:

<bean id="myBean" class="com.example.MyBean" init-method="customInit" destroy-method="customDestroy"/>

然后对使用 @Bean 注解的属性指定方法

@Configuration
public class App {@Bean(initMethod = "customInit", destroyMethod = "customDestroy")public MyBean myBean() {return new MyBean();}
}

使用 Spring 原生接口

初始化拦截
实现 InitializingBean 接口的 afterPropertiesSet 方法:

@Component
public class MyBean implements InitializingBean {@Overridepublic void afterPropertiesSet() {System.out.println("Spring接口实现的初始化逻辑");}
}

销毁拦截实现 DisposableBean 接口的 destroy 方法:

@Component
public class MyBean implements DisposableBean {@Overridepublic void destroy() {System.out.println("Spring接口实现的销毁逻辑");}
}

小总结,使用第二种方法可以实现解耦,并且代码简洁,使用第三种方法可以实现对原有项目的兼容,具体使用哪种方法大家可以根据实际需求去选择

http://www.dtcms.com/wzjs/806075.html

相关文章:

  • 扫二维码做自己网站淘宝内部优惠券网站怎样做的
  • 微信公众号做网站php网站建设文献综述
  • 网站建设珠江摩尔网站建设功能需求分析
  • 做的好的响应式网站如何建立企业网站
  • 强的小企业网站建设网站建设 食品
  • 网站建设响应式是什么t云建站
  • 大连手机自适应网站建设服务企业官方网站建设教程
  • 湛江城市建设培训中心网站wordpress预览效果不一样
  • 七星迪曼网站建设天河微网站建设
  • 兰州网站建设招聘动物大联盟小程序
  • 葡京网站做中间商佛山旺道seo优化
  • 公司网站建设全西青天津网站建设
  • 郑州网站app建设中国科技成就2019
  • 网站安全建设步骤index.html网站怎么做
  • 学做川菜网站动画设计专业就业前景怎么样
  • 网站注册商是什么学校做的网站外面访问不了
  • 公司网站域名续费一年多少钱网站开发综合设计报告
  • 一个网站要多大的空间星子网招聘
  • 中山网站建设设计seo关键词排名优化专业公司
  • 广州做网站系统中国做网站的公司有哪些
  • 一加官方网站进入北京app搭建
  • dw中用php做网站高端互联网网站
  • 建网站网站培训学校
  • 郑州网站建设首选创新昆明百度seo排名优化
  • 长春seo排名公司系统优化的约束条件
  • 在网上如何找做网站的人搞笑图片网站源码
  • 手机网站建设的背景黄山网站建设怎么做
  • 做网站 写文章怎样加视频手工外包加工网可信吗
  • 网站优化主要内容广东网站建设价格
  • 水印网站网站建设服务专业建站公司