@PostConstruct - 项目启动时,对象初始化后执行的方法(只执行一次)

概述

源码 - 只能用来修饰方法
[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-7nvxmkuv-1587880025327)(en-resource://database/20146:1)]


用法解释
[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-ShxX67Pn-1587880025340)(en-resource://database/20144:1)]

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-u1BENVIq-1587880025347)(en-resource://database/20148:1)]


@PostConstruct作用: 注入依赖后,索要执行的方法

使用注意:
非拦截器
方法无参、且无返回值
可以是任何访问类型的方法,且支持final终态方法
不能是静态static方法
不能抛出未检查(unchecked)的异常
拦截器
方法上可以有参数 - 且必须是InvocationContext
可声明抛出已检查(checked)的异常
不可返回值

代码测试

User组件

@Component
public class User {

    @Autowired
    Hobby hobby;


    public User() {
        System.out.println("User无参构造函数被调用");
    }

    @PostConstruct
    public void init() {
        System.out.println("含有@PostConstruct注解方法被调用");
    }

}

Hobby组件

@Component
public class Hobby {

    public Hobby() {
        System.out.println("Hobby无参构造函数调用");
    }

}


SpringBoot启动类

@SpringBootApplication
@MapperScan(value="top.linruchang.springbootdemo.dao")
public class SpringbootdemoApplication {

    @Autowired
    User user;

    public static void main(String[] args) {
        SpringApplication.run(SpringbootdemoApplication.class, args);

    }

}

项目启动后 - 查看控制台
[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-6rjpdxzi-1587880025352)(en-resource://database/25458:1)]


执行顺序:构造函数、自动注入@Autowired、@PostConstructor方法

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值