将保留字映射为 JPA 中的实体字段
JPA 对 SQL 的使用可能与数据库方言中的保留字发生冲突。为了解决这个问题,让我们探讨如何用保留字映射实体字段,同时避免常见的“使用你自己的方言”解决方案。
Hibernate 的方法
Hibernate 允许您转义保留字在反引号 (`) 内。对于 JPA 1.0,使用:
@Column(name="`open`")
对于 JPA 2.0 及更高版本,语法为:
@Column(name="\"open\"")
参考
- [Hibernate 参考指南](https://docs.jboss.org/hibernate/stable/orm/reference/en/html_single/#d0e3171)
- [5.4。 SQL 引用标识符](https://docs.jboss.org/hibernate/stable/orm/reference/en-US/html/dialect-options.html#d0e3171)
- [JPA 2.0规范](https://docs.oracle.com/javaee/7/api/javax/persistence/Column.html#name())
- [2.13 数据库对象的命名](https://docs .oracle.com/javaee/7/api/javax/persistence/Table.html#name())
其他资源
- [Hibernate、MySQL 和“重复”表](https://stackoverflow.com/questions/18211310/hibernate-mysql-and-table-named-repeat-strange-behavior)
以上是如何将 JPA 实体字段与数据库保留字映射?的详细内容。更多信息请关注PHP中文网其他相关文章!