浅谈@PostConstruct不被调用的原因

作者:大江大河大12138 时间:2023-03-22 11:40:29 

@PostConstruct不被调用的原因

如果在配置文件中配置使用,延迟加载的话

如图

浅谈@PostConstruct不被调用的原因

浅谈@PostConstruct不被调用的原因

被@Service等注解的类,需要在注入使用的时候,才会被初始化.如果TableInit类只是被定义而没有在其他地方引用的话,@PostConstrut注释的方法是不会执行的.

@PostConstruct详解

定义

@PostContruct是Java自带的注解,在方法上加该注解会在项目启动的时候执行该方法,也可以理解为在spring容器初始化的时候执行该方法。

从Java EE5规范开始,Servlet中增加了两个影响Servlet生命周期的注解,@PostConstruct和@PreDestroy,这两个注解被用来修饰一个非静态的void()方法。

用法

@PostConstruct
public void someMethod(){}

或者

public @PostConstruct void someMethod(){}

作用

@PostConstruct注解的方法在项目启动的时候执行这个方法,也可以理解为在spring容器启动的时候执行,可作为一些数据的常规化加载,比如数据字典之类的。

执行顺序

其实从依赖注入的字面意思就可以知道,要将对象p注入到对象a,那么首先就必须得生成对象a和对象p,才能执行注入。所以,如果一个类A中有个成员变量p被@Autowried注解,那么@Autowired注入是发生在A的构造方法执行完之后的。

如果想在生成对象时完成某些初始化操作,而偏偏这些初始化操作又依赖于依赖注入,那么久无法在构造函数中实现。为此,可以使用@PostConstruct注解一个方法来完成初始化,@PostConstruct注解的方法将会在依赖注入完成后被自动调用。

Constructor >> @Autowired >> @PostConstruct

浅谈@PostConstruct不被调用的原因

来源:https://blog.csdn.net/weixin_41335352/article/details/103066644

标签:@PostConstruct,调用
0
投稿

猜你喜欢

  • Java自定义线程池的实现示例

    2022-01-23 01:28:04
  • 在Kotlin开发中如何使用集合详解

    2022-03-06 02:22:30
  • Android中CountDownTimer 实现倒计时功能

    2022-01-03 00:00:24
  • 解析C#多线程编程中异步多线程的实现及线程池的使用

    2021-10-23 02:36:23
  • C# ArrayList、HashSet、HashTable、List、Dictionary的区别详解

    2022-06-02 05:22:45
  • Android中RecyclerView上拉下拉,分割线,多条目的实例代码

    2022-10-14 06:05:07
  • C#异步的世界(上)

    2021-09-21 06:01:43
  • C# salt+hash 加密

    2022-04-22 03:54:43
  • eclipse maven 插件的安装和配置详解

    2023-08-24 16:57:01
  • Android新特性页面之ViewPager拖拽到最后一页再拖拽打开其他Activity(三种方法)

    2021-11-30 03:05:40
  • MybatisPlus使用idworker解决雪花算法重复

    2023-02-28 17:19:09
  • 用java开发dota英雄最华丽的技能(实例讲解)

    2022-05-27 00:10:20
  • Java实现在线聊天室(层层递进)

    2022-06-13 11:03:47
  • Java 中Flyway的使用详解

    2022-04-11 03:38:54
  • C#为控件添加自定义事件及自定义触发

    2021-11-24 14:29:16
  • Android如何从实现到封装一个MVP详解

    2023-02-12 10:44:40
  • spring cache注解@Cacheable缓存穿透详解

    2023-12-23 13:41:25
  • Windows下Java环境配置的超详细教程

    2021-12-18 19:19:16
  • Android 之BottomsheetDialogFragment仿抖音评论底部弹出对话框效果(实例代码)

    2023-08-06 01:01:56
  • HttpClient 请求 URL字符集转码问题

    2022-11-20 17:33:07
  • asp之家 软件编程 m.aspxhome.com