jakarta-ee - JPA 数据库分隔符

标签 jakarta-ee jpa eclipselink

我有一个名为 User 和 Group 的两个实体类,这两个保留字都需要分隔,以便数据库将它们作为表接受。用以下方式注释实体:

@Table(name = "\"USER\"")

可以解决问题,但我读到 EclipseLink 允许您指定一个自动分隔名称的全局变量。根据http://dev.eclipse.org/mhonarc/lists/eclipselink-users/msg03434.html ,您需要在 orm.xml 中包含以下内容:
<persistence-unit-metadata>
    <persistence-unit-defaults>
        <delimited-identifiers/>
    </persistence-unit-defaults>
</persistence-unit-metadata>

但是,我已经注释了我的类,并且没有 orm.xml,只有一个 persistence.xml,根据同一来源,我不能包含该属性。还有其他地方我可以指定:
eclipselink.database.delimiters = true

当通过@PersistenceContext 注入(inject)实际的实体管理器时?

谢谢!

更新:

谢谢詹姆斯。我最终得到了以下 orm.xml它完美地做到了!
<?xml version="1.0" encoding="UTF-8"?>
<entity-mappings version="1.0" xmlns="http://java.sun.com/xml/ns/persistence/orm"     xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
                           xsi:schemaLocation="http://java.sun.com/xml/ns/persistence/orm orm_1_0.xsd">
<persistence-unit-metadata>
    <persistence-unit-defaults>
        <delimited-identifiers/>
    </persistence-unit-defaults>
</persistence-unit-metadata>
</entity-mappings>

最佳答案

您应该可以添加一个 orm.xml,它只需要具有此设置,您仍然可以在注释中定义所有映射。

关于jakarta-ee - JPA 数据库分隔符,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6791882/

相关文章:

java - JPA - 从动态表名称中选择所有行

java - JPA/hibernate : schema generation with multiple persistence units

JPA - 多对多集合的分页查询返回错误数量的实体

java - 如何在标有 CascadeType.ALL 的关系中添加持久实体?

java - EclipseLink JPA2 Criteria 查询准备语句

java - IntelliJ : XDoclet, EJB等

java - Java中最简单依赖最少的AOP框架是哪个?

java - JPA/Hibernate 有条件的一对多关系?

Java ee返回boolean时返回500错误

java - Eclipse: 导入 "Existing Maven Projects"自动创建 EAR 项目