java - 在部署中保留实体

标签 java hibernate deployment wildfly

我目前正在开发一个用于创建和运行模拟的 Web 应用程序。对于此应用程序,我希望用户能够加载一些预设并使用它们。为此,我希望在部署时将预设保留在数据库中,但我似乎找不到合适的方法来执行此操作。

对于该项目,我将 Wildfly 与 Hibernate 结合使用。我知道我可以创建一个 import.sql 来执行我想要的操作,但这对于我的使用来说并不是最佳的,因为预设实体有很多属性,这些属性更容易设置为 .java 文件。

这是我的Simulation.java 类的摘录:

@javax.persistence.Entity
public class Simulation
{
/**
 * An automatically generated id
 */
@Id
@GeneratedValue(strategy = GenerationType.SEQUENCE)
private int id;

/**
 * The simulation name, limited to 255 characters
 */
@NotBlank
@Length(max = 255)
private String name;

/**
 * Date the simulation was created
 */
@Temporal(TemporalType.TIMESTAMP)
private Date date;

/**
 * Result of the simulation
 */
@OneToOne(cascade = {CascadeType.ALL})
private SimulationResult result;

@Transient
@OneToMany(cascade=CascadeType.ALL)
private List<Consumer> consumers;

@Transient
@OneToMany(cascade=CascadeType.ALL)
private List<Producer> producers;

private int ticks;

private boolean preset;
[...]

我如何创建一个实例并将其保留在部署中?

最佳答案

您可以考虑使用 WildFly db-bootstrap 扩展 https://github.com/wildfly-extras/db-bootstrap/blob/master/README.md

关于java - 在部署中保留实体,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/29104365/

相关文章:

java - Amazon Marketplace 应用程序因包含 Eclipse 设置文件而被拒绝

java - Spring Integration 入站 JMS 与 JBoss createConnection() : IllegalArgumentException: ClassCastException

java - JPA 中的@Any 等价于什么?

deployment - VSTS 构建代理 VS 代理直接安装在服务器上(部署组)。哪个更安全?

java - Glassfish 无法以根目录部署,因为声明了 default-web-module

python - 在远程执行 python fabric 命令之前总是给出命令行

java - 如何通过 Hadoop mapreduce 使用集中资源

java - 为什么我在 JSF 获取 postgresql boolean 字段时总是得到 NULL?

mysql - Hibernate c3p0 配置参数在运行时不受影响

java - 映射一组枚举 - Hibernate