Spring中@PostConstruct注解

该文章发布于 ,归类于 Java 0 条评论

Spring为初始化回调提供了几个选项,通过实现 InitializingBean/DisposableBean 接口来定制初始化之后 / 销毁之前的操作方法。从Spring 2.1开始,可以使用@PostConstruct@PreDestroy注解,表示Bean在初始化之前调用该方法。需要注意以下几点:

1.只有一个方法可以使用此注释进行注解;

2.被注解方法不得有任何参数;

3.被注解方法返回值为void;

4.被注解方法不得抛出已检查异常;

5.被注解方法需是非静态方法;

6.此方法只会被执行一次;

Servlet执行流程图如下:

图片来源地址:https://blog.csdn.net/wo541075754/article/details/52174900

@RestController
public class UserController {

    public UserController() {
        System.out.println("构造方法被调用");
    }

    @PostConstruct
    public void load() {
        System.out.println("@PostConstruct方法被调用");\
    }
}

上述代码中的load方法会在构造方法之后,init方法之前调用,所以最终的输出结果为:

构造方法被调用
@PostConstruct方法被调用

一般情况,使用@PostConstruct是在Servlet初始化时加载一些缓存数据等。

本文参考地址:https://blog.csdn.net/wo541075754/article/details/52174900

相关文章