我的dropwizard项目中有以下日have任务:
@SimpleTrigger(repeatInterval = 10, timeUnit = TimeUnit.SECONDS)
public class GitlabImporter extends Job {
private static BranchDAO branchDAO;
@Override
@ExceptionMetered
public void doRun() throws JobInterruptException {
branchDAO = (BranchDAO) SundialJobScheduler.getServletContext().getAttribute("BranchDAO");
String jobId = UUID.randomUUID().toString();
try {
...
log.info(branches.toString());
} catch (Exception e) {
log.error(e.getLocalizedMessage());
}
}
}
我尝试在Sceduler任务中使用我的DAO,我想遵循日d文档如何加载对象,但似乎无法正常工作。
在日d任务中使用Hibernate项目的正确方法是什么?
谢谢
最佳答案
实现此目的的一种方法是在YourDropwizardApplication类的run()方法中设置BranchDAO属性-
environment.getApplicationContext().setAttribute("BranchDAO", new BranchDAO());