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

网站建设期的网站案例点击器免费版

网站建设期的网站案例,点击器免费版,微信上可以做网站吗,在今日头条之类网站做电商目录 生命周期汇总 细分生命周期 1.实例化 2.属性赋值(依赖注入) 3.Aware接口 4.BeanPostProcessor接口 5.初始化 6.销毁 测试验证 类结构 业务类 测试类 生命周期汇总 Spring Bean 的生命周期见下图 (一定记忆好下图&#x…

目录

生命周期汇总

细分生命周期

1.实例化

2.属性赋值(依赖注入)

3.Aware接口

4.BeanPostProcessor接口

5.初始化

6.销毁

测试验证

        类结构

        业务类

        测试类


生命周期汇总

        Spring Bean 的生命周期见下图
        一定记忆好下图

        

细分生命周期

1.实例化

  当 Spring 容器加载配置文件时,会根据配置创建 Bean 的实例。这个阶段主要是进行对象实例的创建,使用无参构造方法或工厂方法。

2.属性赋值(依赖注入)

    Spring 容器会调用对象的 set 方法或使用注解来为 Bean 的属性进行赋值。这个阶段可以进行各种依赖关系的注入,比如通过构造函数、setter 方法、注解等方式。

3.Aware接口

用来让 Bean 对某些特定信息感知(aware)的接口,它们可以通过实现相应的 Aware 接口来获取容器的相关信息。在 Bean 初始化的过程中,进行一些自定义的操作,例如对 Bean 的名称、工厂、上下文等进行操作或者引用
对应接口有三个:

  1. BeanNameAware:获取自己在 Spring 容器中的名称,即 Bean 的 ID。通过调用 setBeanName() 方法传入 Bean 的名称。

  2. BeanFactoryAware:获取到所属的 BeanFactory,即 Spring 容器本身的引用。通过调用 setBeanFactory() 方法传入 BeanFactory 的引用。

  3. ApplicationContextAware:获取到所属的 Spring 应用上下文的引用。通过调用 setApplicationContext() 方法传入 ApplicationContext 的引用。

4.BeanPostProcessor接口

  1. postProcessBeforeInitialization(Object bean, String beanName):

    • 该方法在 Bean 的初始化之前被调用。
    • 返回值为 Object,表示修改或替换原始的 Bean 对象。
    • 可以用来实现一些预处理操作,例如属性赋值或依赖注入。
    • 应用举例:对bean中指定属性加解密,如下代码👇
  2. postProcessAfterInitialization(Object bean, String beanName):

    • 该方法在 Bean 的初始化之后被调用。
    • 返回值为 Object,表示修改或替换原始的 Bean 对象。
    • 可以用来实现一些后处理操作,例如添加额外的功能或修改 Bean 实例,常见应用场景如AOP
@Component
public class UserService implements BeanPostProcessor {private String password;// Getter and Setter for password@Overridepublic Object postProcessBeforeInitialization(Object bean, String beanName) throws BeansException {if (bean instanceof UserService) {UserService userService = (UserService) bean;// 在这里对 password 进行解密操作String decryptedPassword = decrypt(userService.getPassword());userService.setPassword(decryptedPassword);}return bean;}@Overridepublic Object postProcessAfterInitialization(Object bean, String beanName) throws BeansException {return bean;}private String decrypt(String encryptedPassword) {// 实现解密逻辑// ...return decryptedPassword;}
}

5.初始化

    在属性赋值完成后,Spring 容器会调用 Bean 的初始化方法(可以通过实现 InitializingBean 接口或自定义初始化方法(自定义的示例如下👇)来指定),进行一些初始化操作,比如连接数据库、加载数据等。

    @PostConstructpublic void init() {System.out.println("自定义初始化方法");}

6.销毁

    当 Spring 容器关闭或移除 Bean 时,会调用 Bean 的销毁方法(可以通过实现 DisposableBean 接口或配置 destroy-method 方法来指定)。在这个阶段可以进行一些资源释放、清理操作,比如关闭数据库连接、释放文件句柄等。

测试验证

git地址:先跟着流程图记忆好生命周期,根据自己理解到的自己手写
SpringBean: SpringBean生命周期

如下是截图参考,根据自己喜好选择clone代码或者截图

        类结构

        业务类

        测试类

public class UserTest {public static void main(String[] args) {AnnotationConfigApplicationContext ctx = new AnnotationConfigApplicationContext(SpringConfig.class);User user = ctx.getBean(User.class);System.out.println(user);}
}

        根据控制台打印即可看到Bean的生命周期执行过程 
        如果想掌握本篇,那就静下心 动起手 搞一遍

http://www.shuangfujiaoyu.com/news/18790.html

相关文章:

  • logo免费自动生成器网站seo优化方案
  • php做网站切换语言南京网站设计公司
  • 如何做建材网站的线下推广百度指数的数据怎么导出
  • 做网站导航条怎么弄网站的优化公司
  • 福建省建设厅考试网站灰色关键词快速排名
  • 可以下载新闻视频的网站口碑营销属于什么营销
  • 广西网红廊坊网络推广优化公司
  • 平湖网站建设互联网运营推广公司
  • 政府补贴企业做网站如何制作自己的网址
  • 淘宝seo是指免费seo视频教程
  • 武汉做网站训网络营销渠道的特点
  • 个人做网站开工作室谷歌搜索引擎下载
  • 怎么注册免费网站网站源码交易平台
  • 建立网站的链接结构有哪几种形式?简述其各自的优缺点郑州抖音推广
  • 衡阳有线宽带网站网站seo优化检测
  • 网站开发项目可行性分析中国万网登录入口
  • 链接测试对于网站的意义营销推广的公司
  • 天河网站建设外包2021小学生新闻摘抄
  • 建设公司网站内容西安seo网络优化公司
  • asp网站如何安装小说推文推广平台
  • 网站开发主菜单和子菜单长沙网站开发制作
  • 深圳做网站的公司搜行者seo东莞seo排名收费
  • 宁城网站建设郑州网站seo服务
  • 免费广告设计app网站排名优化培训
  • 建设英文网站的必要性新手学seo
  • 1空间做2个网站吗爱站网官网查询域名
  • 网站建设成都云西安seo王尘宇
  • 微网站销售杭州百度快照优化排名推广
  • 做网站的如何开发业务湘潭网络推广
  • 营销方案网站一键优化下载安装