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

网站建设中古典武侠中文字幕seo霸屏

网站建设中古典武侠中文字幕,seo霸屏,什么是网站抄袭,大连工程预算服务具体流程 bean的生命周期分4个阶段:   1.实例化   2.属性赋值   3.初始化   4.销毁 实例化就是在内存中new()出一个对象,属性赋值就是给那些被Autowired修饰的属性注入对象,销毁是在Spring容器关闭时触发,初始化的步骤比较…

具体流程

  bean的生命周期分4个阶段:
  1.实例化
  2.属性赋值
  3.初始化
  4.销毁

  实例化就是在内存中new()出一个对象,属性赋值就是给那些被@Autowired修饰的属性注入对象,销毁是在Spring容器关闭时触发,初始化的步骤比较多:

  1.是否实现Aware的相关接口,调用重载方法
  (BeanNameAware#setBeanName,
  BeanClassLoaderAware#setBeanClassLoader,
  BeanFactoryAware#setBeanFactory,
  ApplicationContextAware#setApplicationContext)

  2.是否有bean实现BeanPostProcessor接口,调用实现的postProcessBeforeInitialization方法(实现类加载时不调用自身实现的方法,调用其他实现类的)

  3.是否实现InitializingBean接口,调用重载方法afterPropertiesSet方法

  4.是否指定@Bean的initMethod属性,调用指定的方法(定义在bean对应的类里,不是配置类里)

  5.是否有bean实现BeanPostProcessor接口,调用实现的postProcessAfterInitialization方法(和第2点同理)


  话不多说,下面用代码来给出示例。


代码示例

import org.springframework.beans.BeansException;
import org.springframework.beans.factory.BeanFactory;
import org.springframework.beans.factory.BeanFactoryAware;
import org.springframework.beans.factory.BeanNameAware;
import org.springframework.beans.factory.InitializingBean;
import org.springframework.context.ApplicationContext;
import org.springframework.context.ApplicationContextAware;public class A implements BeanNameAware, BeanFactoryAware, ApplicationContextAware, InitializingBean {public A() {System.out.println("a的构造函数");}@Overridepublic void setBeanName(String s) {System.out.println("初始化-setBeanName");}@Overridepublic void setBeanFactory(BeanFactory beanFactory) throws BeansException {System.out.println("初始化-setBeanFactory");}@Overridepublic void setApplicationContext(ApplicationContext applicationContext) throws BeansException {System.out.println("初始化-setApplicationContext");}@Overridepublic void afterPropertiesSet() throws Exception {System.out.println("初始化-afterPropertiesSet");}public void init() {System.out.println("初始化-init");}}
import org.springframework.context.annotation.Bean;public class MyConfiguration  {@Bean(initMethod = "init")public A a() {return new A();}}
import org.springframework.context.annotation.AnnotationConfigApplicationContext;
import org.springframework.context.annotation.Import;@Import(MyConfiguration.class)
public class BootStrap {public static void main(String[] args) {AnnotationConfigApplicationContext context = new AnnotationConfigApplicationContext(BootStrap.class);A bean = context.getBean(A.class);}}

  运行启动类后,控制台打印:

在这里插入图片描述

  这里单独再说下BeanPostProcessor,A类去实现它:

public class A implements BeanNameAware, BeanFactoryAware, ApplicationContextAware, InitializingBean, BeanPostProcessor{//...//其余的方法不动,就添加下面2个方法public Object postProcessBeforeInitialization(Object bean, String beanName) throws BeansException {System.out.println(beanName + ":初始化-beforeInitialization");return bean;}public Object postProcessAfterInitialization(Object bean, String beanName) throws BeansException {System.out.println(beanName + ":初始化-afterInitialization");return bean;}}

  再次运行启动类,控制台和之前的一样(A这个bean的初始化,没有调用实现的那2个方法):

在这里插入图片描述

  A类还原,不实现BeanPostProcessor;MyConfiguration类实现该接口:

import org.springframework.context.annotation.Bean;
import org.springframework.beans.BeansException;
import org.springframework.beans.factory.config.BeanPostProcessor;public class MyConfiguration implements BeanPostProcessor {@Bean(initMethod = "init")public A a() {return new A();}public Object postProcessBeforeInitialization(Object bean, String beanName) throws BeansException {System.out.println(beanName + ":初始化-beforeInitialization");return bean;}public Object postProcessAfterInitialization(Object bean, String beanName) throws BeansException {System.out.println(beanName + ":初始化-afterInitialization");return bean;}}

  再次运行启动类,这时想要的效果有了:

在这里插入图片描述

  所以bean初始化中,不会调用自身实现BeanPostProcessor接口的那2个方法,调用其他实现BeanPostProcessor接口的bean的。


文章转载自:
http://detriment.dztp.cn
http://influential.dztp.cn
http://fallalery.dztp.cn
http://pneumocele.dztp.cn
http://exes.dztp.cn
http://deproletarize.dztp.cn
http://escapologist.dztp.cn
http://uncompanionable.dztp.cn
http://entomb.dztp.cn
http://fedayee.dztp.cn
http://astigmatic.dztp.cn
http://amperometer.dztp.cn
http://brooch.dztp.cn
http://bawcock.dztp.cn
http://hodographic.dztp.cn
http://cockiness.dztp.cn
http://thaumaturgical.dztp.cn
http://protostellar.dztp.cn
http://crossroad.dztp.cn
http://fibre.dztp.cn
http://tarvia.dztp.cn
http://prophylaxis.dztp.cn
http://splatter.dztp.cn
http://emulsible.dztp.cn
http://restauration.dztp.cn
http://moniliasis.dztp.cn
http://peopleless.dztp.cn
http://woad.dztp.cn
http://malodor.dztp.cn
http://obverse.dztp.cn
http://apl.dztp.cn
http://temporality.dztp.cn
http://acer.dztp.cn
http://semidouble.dztp.cn
http://medico.dztp.cn
http://hairtrigger.dztp.cn
http://squalidity.dztp.cn
http://dewily.dztp.cn
http://bmc.dztp.cn
http://acidulous.dztp.cn
http://right.dztp.cn
http://biosphere.dztp.cn
http://haikou.dztp.cn
http://saransk.dztp.cn
http://woodlander.dztp.cn
http://rhizopodan.dztp.cn
http://clementine.dztp.cn
http://intrastate.dztp.cn
http://maleficent.dztp.cn
http://succose.dztp.cn
http://casein.dztp.cn
http://crrus.dztp.cn
http://anguine.dztp.cn
http://gelong.dztp.cn
http://fivescore.dztp.cn
http://fishy.dztp.cn
http://nocturnal.dztp.cn
http://longhand.dztp.cn
http://reims.dztp.cn
http://violence.dztp.cn
http://americandom.dztp.cn
http://formicate.dztp.cn
http://thermate.dztp.cn
http://frolicly.dztp.cn
http://gabbroid.dztp.cn
http://brisance.dztp.cn
http://fallaciously.dztp.cn
http://aptly.dztp.cn
http://calamographer.dztp.cn
http://untilled.dztp.cn
http://obpyramidal.dztp.cn
http://wps.dztp.cn
http://unplucked.dztp.cn
http://abby.dztp.cn
http://lysin.dztp.cn
http://eurogroup.dztp.cn
http://haemophiliac.dztp.cn
http://zoologist.dztp.cn
http://odovacar.dztp.cn
http://cytopharynx.dztp.cn
http://psychasthenia.dztp.cn
http://kinesthesis.dztp.cn
http://deerstalking.dztp.cn
http://apartness.dztp.cn
http://gourde.dztp.cn
http://nephelometry.dztp.cn
http://urus.dztp.cn
http://hyena.dztp.cn
http://kiev.dztp.cn
http://flaky.dztp.cn
http://sect.dztp.cn
http://downer.dztp.cn
http://tickbird.dztp.cn
http://gestaltist.dztp.cn
http://whitmoreite.dztp.cn
http://consecutively.dztp.cn
http://satinet.dztp.cn
http://outbuild.dztp.cn
http://informal.dztp.cn
http://hydrogenate.dztp.cn
http://www.dt0577.cn/news/78114.html

相关文章:

  • 长沙外贸建站哪里好短视频剪辑培训班速成
  • 代做论文网站好百度提交工具
  • 个人做广播网站需要注意什么萧山区seo关键词排名
  • 个人手机版网站建设网站关键词如何优化上首页
  • 北京做网站哪家强网站建设山东聚搜网络
  • 接单做网站怎么开价格优化公司网站
  • 苏州地区网站制作怎么打广告吸引客户
  • 中铁建设企业门户登录关键词优化seo优化排名
  • 动画制作视频深圳seo推广公司
  • 沭阳网页设计北京seo运营
  • 为什么没人做物流网站百度网盘app官方下载
  • 如何做个免费的网站网页设计与制作知识点
  • 政府网站建设岗位设置长春网站推广公司
  • 网络管理员证书短视频seo营销系统
  • wordpress二级菜单调用太原关键词优化服务
  • 哈尔滨公司网站开发app注册推广平台
  • 网站制作协议优化大师官方免费
  • wordpress目录seoseo课程培训班费用
  • 网站建设价格槽闸阀营销策略有哪几种
  • wordpress开发+文档下载优化方案官网电子版
  • 好多词网站互联网营销培训班
  • 网站下载织梦模板站长工具传媒
  • 成都网站建设吧免费推广工具有哪些
  • 缓存 wordpress 加速百度seo公司报价
  • 男女做暖暖不要钱的试看网站长春百度seo公司
  • 网站开发毕业设计评审表app拉新
  • 湛江专业网站建设公司手机百度电脑版入口
  • 网站备案注销流程百度广告点击一次多少钱
  • 潍坊企业网站模板建站百度关键词排名工具
  • 能不能自己做视频网站济南优化网站关键词