我们经常会遇到一些情况需要某一个方法或者操作只执行一次,比如说配置信息加载,如果配置信息需要动态刷新,这个不在适用范围。下面列举几种方式 第一种 如果是web容器,可以使用servlet或者Listener 第二种 如果使用spring容器,则可以直接使用注解@PostConstruct 第三种 main直接执行,可以写在静态代码块 static{ } 第四种 封装成一个方法,使用AtomicBoolean来进行判断是否已执行,或者使用同步锁来保证原子性