@PostConstruct使用

@PostConstruct

大佬的理解:https://www.cnblogs.com/lay2017/p/11735802.html

以下不建议看(个人浅薄的理解)

注解说明

Java 提供的注解,用来修饰一个非静态的void()方法。被其修饰的方法只会执行一次,在服务器加载servlet的时候运行。

通常使用@PostConstruct注解会是在spring框架中,该注解的方法在整个bean初始化中的执行顺序:

Constructor(构造方法) -> @Autowired(依赖注入) -> @PostConstruct(注释的方法);

个人示例

	@Resource
    private Mapper mapper;
    private Long id;

    /**
     * 在整个类加载时便获取数据库中id;
     * 不使用@PostConstruct注解:一:需要在运行时调用方法获取很麻烦
     *						   二:静态代码块无法获取到Mapper				
     */
    @PostConstruct
    private void init() {
        QueryWrapper<Entity> queryWrapper = new QueryWrapper<>();
        queryWrapper.lambda().eq(Entity::getParam, "111111111");
        Entity entity = mapper.selectOne(queryWrapper);
        deviceId = Long.valueOf(entity.getId());
    }

如果只是想要在类加载时获取数据,还可以采用springboot的启动加载类ApplicationRunner

// 直接实现 implements Application类,实现run()方法就好;
posted @   窃窃私语QAQ  阅读(173)  评论(0编辑  收藏  举报
相关博文:
阅读排行:
· Manus爆火,是硬核还是营销?
· 终于写完轮子一部分:tcp代理 了,记录一下
· 别再用vector<bool>了!Google高级工程师:这可能是STL最大的设计失误
· 单元测试从入门到精通
· 震惊!C++程序真的从main开始吗?99%的程序员都答错了
点击右上角即可分享
微信分享提示