2014-03-04 81 views
0

有没有人通过将一些代码放入一些初始化类的静态构造函数或类似的东西来初始化数据?我想知道这样的posibillity在哪里:JPA初始化数据的最佳方式是什么?

​​

您怎么看待这种初始化数据的方式?我不相信在maven SQL插件中使用SQL查询,因为它具有较低的灵活性(假设数据结构可以更改,特别是列名称)。但是,我不确定何时会加载课程。但这只是我的理论实践,也许你正在使用比这更好的东西?谢谢。

+0

SomeDataClass的构造函数就是我把这样的代码。 – hd1

+0

好吧,但我必须调用构造函数?我的意思是,我需要触发这个类在我的业务逻辑之前初始化? –

回答

0

你要尽可能晚地,并在我看来受控时刻初始化数据,所以静态初始化是一个没有没有我。这取决于它是什么类型的应用程序,我将在哪里进行初始化。如果有一个Web层,我可能会使用特定于Web框架的初始化方法或使用Servlet上下文侦听器来完成此操作。如果只有一个EJB层,我可能会做一个单身EJB注释与@Startup为这个线程我快速google搜索显示:

EJB stateless - Private members initialisation

+0

如果你不想把它绑一个应用程序容器,JPA也可以在容器外使用。所以直Java类可以在命令行中,而不需要将其捆绑到应用程序期待的数据以及运行。 – EdH

+0

我会尽力,你说得对使用单与@Startup注释,但我做这个答案的解决方案之前,我就检查了这一点。谢谢。 –

-1

我会使用像Liquibase而不是EJB的东西。它专为数据库管理而设计。

+0

这不是问题。问题是如何结合EJB技术来做到这一点。 – Gimby

+0

嗯,也许我想,但不幸的是,使用的技术不在桌面上。 –

相关问题