0

Oracle很好地描述了如何创建@Entity。但是,我并不清楚如何实际添加/删除表。我也喜欢印度玫瑰的解释,但只是想澄清一下总体思路。

对于带有 CDI 的 JSF JEE6 应用程序,我基本上可以创建一个 @Entity 类,在 @Named bean 中实例化一些实例,然后使用 bean 中的 EntityManager 将(CRUD 操作)写入 MySQL 数据库?我可以只使用 Glassfish 附带的默认 JPA 吗?

只是想在我开始之前澄清总体思路。

4

1 回答 1

5

一般来说,您至少有两种选择:

  1. 创建数据库表和引用,然后基于数据库表构建实体类(现代 IDE 提供了从 db 表自动生成实体类的工具)

  2. 手动编写实体类并从这些类创建数据库。JPA 提供者通常通过在persistence.xml中设置一个特殊参数来允许这样做,例如对于 Eclipselink:

<property name="eclipselink.ddl-generation" value="drop-and-create-tables"/>

删除所有现有表并从您的实体类创建新表(在开发期间特别有用),同时

<property name="eclipselink.ddl-generation" value="create-tables"/>

如果不存在,只会创建一个新表。

我可以只使用 Glassfish 附带的默认 JPA 吗?

是的,对于基于规范的功能。

于 2012-04-11T07:08:16.203 回答