java - 从实体生成表

标签 java hibernate jpa entity

使用 Hibernate 工具,我想生成一个脚本来从我的 java 项目中的实体创建表。 你知道怎么做吗?

import java.io.Serializable; 
import javax.persistence.Entity;
import javax.persistence.Id;
import javax.persistence.Table;

@Entity
@Table(name = "foo")
public class Foo implements Serializable {

    private static final long serialVersionUID = 1L;
    @Id
    private int userId;
    @Id
    private int number;

    public int getUserId() {
        return userId;
    }
    public void setUserId(int userId) {
        this.userId = userId;
    }
    public int getNumber() {
        return number;
    }
    public void setNumber(int number) {
        this.number= number;
    }
}

我正在尝试这个非常简单的例子

最佳答案

这样做

    String[] s = config.generateSchemaCreationScript(new PostgreSQL82Dialect());
    StringBuilder script = new StringBuilder();
    Formatter formatter = FormatStyle.DDL.getFormatter();
    for (int i = 0; i < s.length; i++) {           
        String line = formatter.format(s[i]);            
        script.append(line);
        script.append(";\n");
    }
    System.out.println(script.toString());

关于java - 从实体生成表,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20425189/

相关文章:

java - 无需 Hibernate 的自定义 @Id 生成器

Java 多线程优先级

Java - 可选循环

java - 如何追溯方法到它们的类然后到它们的包? Java语法

java - 我可以根据实体或表使用不同的 Hibernate 批量大小吗?

java - Spring Boot 查询中的动态过滤器

java - 如何在 Mockito 中模拟方法参数

java - 解析多态子类属性jpa hibernate查询的标准

java - HIbernate 不能用外键删除实体。外键设置为空

hibernate - 带有 where 子句的 ManyToOne