Oracle很好地描述了如何创建@Entity。但是,我并不清楚如何实际添加/删除表。我也喜欢印度玫瑰explanation ,但只是想澄清总体思路。
对于带有 CDI 的 JSF JEE6 应用程序,我基本上可以创建一个 @Entity 类,实例化 @Named bean 中的一些实例,并使用 EntityManager 从 bean 写入(CRUD 操作)到 MySQL 数据库?我可以只使用 Glassfish 附带的默认 JPA 吗?
只是想在开始之前澄清一下总体思路。
最佳答案
一般来说,您至少有两个选择:
创建数据库表和引用,然后根据数据库表构建实体类(现代 IDE 提供从数据库表自动生成实体类的工具)
手动编写实体类并从这些类创建数据库。 JPA 提供者通常通过在 persistence.xml 中设置特殊参数来允许这样做,例如对于 Eclipselink:
<property name="eclipselink.ddl-generation" value="drop-and-create-tables"/>
删除所有现有表并从实体类创建新表(在开发过程中特别有用),而
<property name="eclipselink.ddl-generation" value="create-tables"/>
只有在没有现有表的情况下才会创建一个新表。
I can just use default JPA which comes with Glassfish?
是的,对于基于规范的功能。
关于java - @Entity 使用 JSF,使用 JPA 保留 "hello world",我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10097504/