我正在使用Play的2.5.3。我一直在尝试将初始数据写入我的数据库,但它崩溃了“没有启动应用程序”和“尝试用@ play.jpa.Transactional注释”错误。以前,我使用2.4.6,它工作正常。我检查了migration guide。但是我找不到答案。
我使用AbstractModule
类创建自己的Module
。覆盖configure()
抽象方法。在该方法中,我将我的静态内部类绑定为EagerSingleton
。它会注入所有必需的变量。在本课程中,我想使用jpa.withTransactional()
运行代码。但是当我想进行jpa交互时,仍会出现异常。
我错过了什么?
public class ApplicationModule extends AbstractModule {
@Override
public void configure() {
bind(ApplicationInitializer.class).asEagerSingleton();
}
private static class ApplicationInitializer {
@Inject
public ApplicationInitializer(JPAApi jpa) {
Logger.info("Application init...");
jpa.withTransaction(() -> {
//... database interactions
});
}
}
}