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

做网站的网站违不违法专门查建设项目的网站

做网站的网站违不违法,专门查建设项目的网站,介绍家乡网页html代码,网站开发深目录 1、Spring核心组件 2、Bean组件 2.1、Bean的定义 2.2、Bean的生命周期 1、实例化 2、属性填充 3、初始化 4、销毁 2.3、Bean的执行时间 2.4、Bean的作用域 3、常见问题解决方案 4、与Java对象区别 前言 关于bean的生命周期,如下所示: …

目录

1、Spring核心组件

2、Bean组件

2.1、Bean的定义

2.2、Bean的生命周期

1、实例化

2、属性填充

3、初始化

4、销毁

2.3、Bean的执行时间

2.4、Bean的作用域

3、常见问题解决方案

4、与Java对象区别


前言

关于bean的生命周期,如下所示:

之前文章介绍Spring的核心模块,可参考:Spring的核心模块原理介绍_spring 原理-CSDN博客


1、Spring核心组件

spring的核心组件由容器层、测试层、数据链接层、web层、AOP、Aspects等组成。

而容器层里面有四个组件,分别是beans,context、core、expression language。

如下图所示、

2、Bean组件

对于spring-beans,由bean的定义,注入方式、生命周期和作用域四种组成。

2.1、Bean的定义

1.BeanDefinition(Bean定义抽象)

代码如下图所示:

public interface BeanDefinition {String getBeanClassName();String getScope();boolean isSingleton();boolean isLazyInit();// 其他元数据访问方法...
}

关于bean定义信息如下图所示:

2.2、Bean的生命周期

        Spring Bean 的生命周期指的是一个 Bean 从创建到销毁的整个过程,可以按照container容器,bean,aware三个组件进行介绍。

如下图所示:

关于每个阶段需要执行的流程,如下图所示:

由上图可知,分为四个阶段

1、实例化

2、属性填充

如何解决三级缓存的问题,可参考:Spring容器三级缓存介绍_三级缓存spring-CSDN博客

        关于三级缓存就发生在属性填充阶段。

3、初始化

分为aware回调函数和初始化回调。

1、aware回调。

2、初始化回调包括初始化前、初始化、初始化后阶段,分别由BeanPostProcessor类进行调用。

        动态代理也发生在初始化阶段。

4、销毁

当使用完成后,会进行销毁阶段。

代码如下所示:

public  class destroyBeanTest implements DisposableBean {@Overridepublic void destroy() throws Exception {}
}

关于整个bean的执行流程顺序的代码示例:

public class LifecycleBean implements BeanNameAware, InitializingBean, DisposableBean {private String name;// 1. 构造函数public LifecycleBean() {System.out.println("1. 构造函数执行");}// 2. 属性注入public void setName(String name) {System.out.println("2. 属性注入: " + name);this.name = name;}// 3. BeanNameAware@Overridepublic void setBeanName(String name) {System.out.println("3. BeanNameAware: " + name);}// 4. @PostConstruct@PostConstructpublic void postConstruct() {System.out.println("4. @PostConstruct方法");}// 5. InitializingBean@Overridepublic void afterPropertiesSet() {System.out.println("5. afterPropertiesSet()");}// 6. 自定义init方法public void customInit() {System.out.println("6. 自定义init-method");}// 7. @PreDestroy@PreDestroypublic void preDestroy() {System.out.println("7. @PreDestroy方法");}// 8. DisposableBean@Overridepublic void destroy() {System.out.println("8. destroy()");}// 9. 自定义destroy方法public void customDestroy() {System.out.println("9. 自定义destroy-method");}
}

2.3、Bean的执行时间

        实例化、属性填充、初始化三个阶段在IOC容器加载的时候去执行的,销毁在spring容器关闭的时候,才会执行。

2.4、Bean的作用域

        bean在被Spring容器装配时,作用域(Scope)分为singleton、prototype、request、session,其中request和session适用于WebApplicationContext环境。

1、singleton

        单例模式,Spring的容器中只有一个实例,有Spring容器创建,创建时间点,分为启动创建和延迟加载,根据bean对象配置的属性lazy-init属性决定,默认为false,配置为true时,会在第一次调用时创建该对象。


2、prototype

        非单例模式,每次从Spring容器中调用时,都返回一个新实例。创建bean对象的时间点为bean被调用时。所以都是lazy-init。


3、request

        每次request请求都会创建一个新的bean。

4、session

        同一个session共享一个bean。

3、常见问题解决方案

  1. 循环依赖

    • 重构设计,避免循环依赖

    • 使用@Lazy延迟加载一方

    • 改用setter/field注入

  2. Bean覆盖

    • 使用@Primary指定主候选Bean

    • 通过@Qualifier明确指定Bean

    • 合理命名Bean(避免自动装配歧义)

  3. 生命周期异常

    • 确保@PostConstruct方法轻量

    • 避免在初始化阶段依赖未准备好的Bean

    • 正确处理原型作用域Bean的资源释放


4、与Java对象区别

    


总结    

        Spring Bean 机制是 Spring 框架的基石,通过理解其工作原理,可以更好地利用 Spring 的强大功能,构建松耦合、易测试、可维护的应用程序。


总结

1、Spring官网阅读(十)Spring中Bean的生命周期(下)_applybeanpost-CSDN博客


文章转载自:

http://jC05EwlQ.rmchq.cn
http://pS7yuOLl.rmchq.cn
http://frfMlYTW.rmchq.cn
http://VQPYsfCU.rmchq.cn
http://4dcryNZQ.rmchq.cn
http://OkVXtS79.rmchq.cn
http://wjeKWfpH.rmchq.cn
http://QLYIjPLm.rmchq.cn
http://60iLRxFs.rmchq.cn
http://kSGjRgch.rmchq.cn
http://cGKxIYwd.rmchq.cn
http://HFDi66Aa.rmchq.cn
http://7rSwoiyL.rmchq.cn
http://K6wW8r1g.rmchq.cn
http://aUZAH5Cj.rmchq.cn
http://MzONY34P.rmchq.cn
http://ShK8qx0O.rmchq.cn
http://mH4wKGgh.rmchq.cn
http://S6B6OJmZ.rmchq.cn
http://tARBwx7L.rmchq.cn
http://wgyrgGbd.rmchq.cn
http://h2mN0Zwf.rmchq.cn
http://8iYQ94wm.rmchq.cn
http://359u1w4X.rmchq.cn
http://tSMO5dnm.rmchq.cn
http://bNrqFBnL.rmchq.cn
http://7GirjKva.rmchq.cn
http://yeO8JKTr.rmchq.cn
http://i6Ew7wnQ.rmchq.cn
http://hR1s1diw.rmchq.cn
http://www.dtcms.com/wzjs/615477.html

相关文章:

  • 2018网站如何做seo网络教育平台
  • 企业建设网站的帮助网页设计公司企业文化
  • 网站创建软件公司网站建设多少钱需要
  • 国外优秀网站模板海南房地产网站建设
  • 信誉好的苏州网站建设简易网页模板
  • 免费建设物流网站百度百度一下一下
  • 自做视频网站赚钱吗目前h5页面的制作工具有哪些
  • 手机网站开发环境搭建衡东网页设计
  • wordpress翻译制作seo网站推广 沈阳
  • 海淀专业企业网站建设zencart 网站搬家
  • 江门电商网站设计培训托福培训一对一
  • 大企业网站建设律师推广网站排名
  • 优品惠网站建设需求wordpress wordstar
  • 网站开发学生鉴定表广告发布费和广告服务费的区别
  • 企业部门网站建设流程wordpress 后台 主题
  • 金华企业网站建设公司永丰县城乡建设局网站
  • 工作牌seo的宗旨是什么
  • wordpress 主题 导入2seo对网店推广的作用
  • 网站备案照做风险投资网站
  • 手机wap网站模板使用网站标题更换
  • 用ps怎么做网站效果图网站建设的分工
  • 网站建设设计要点wordpress显示当前位置 代码
  • 网站备案不注销有什么后果设计logo的小程序
  • 建设网站所需材料大数据平台设计
  • 企业网站建设 新闻宣传中医院网站模板
  • 建站之星网站 seo优化西安西工大软件园做网站的公司
  • 马尔康网站建设重庆住房和城乡建设厅官方网站
  • 制作一个网站流程写网站代码
  • 在电商网站上做推广的技巧郑州建设局
  • 82家合法现货交易所名单苏州推广关键词优化