换句话说,让 JBoss 在启动时立即运行 SQL 脚本文件或 bean。
当我重新启动我的应用程序时,我想在每次重新构建数据库时重新填充我的数据库。我该怎么做呢?
换句话说,让 JBoss 在启动时立即运行 SQL 脚本文件或 bean。
当我重新启动我的应用程序时,我想在每次重新构建数据库时重新填充我的数据库。我该怎么做呢?
根据 JBoss 版本(Java EE 6 中引入了 Singleton),您可以使用带有Startup注释的Singleton bean,并在@PostConstruct方法中执行这些操作。
如下所示:
import javax.annotation.PostConstruct;
import javax.ejb.Singleton;
import javax.ejb.Startup;
@Singleton
@Startup
public class Initializer {
@PostConstruct
public void populate() {
//initialize database here
}
}
根据规范,Singleton bean 为每个 JVM 实例化一次 - 因此在集群中使用会带来惊喜。