- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
@TableGenerator(name="Emp_Gen",table="ID_GEN", pkColumnName = "GEN_NAME",pkColumnValue = "Employee_GEN",valueColumnName = "GEN_VAL",initialValue = 1000,allocationSize = 100)
一切正常,但initialValue
无效。下面是名为“employee”的表(注:使用了MySql,Hibernate-JPA)
我认为第一行“id”是 1000,而不是 1,对吧?但是如果是 1,第二行应该是 101....谁能帮帮我一个笨蛋?
最佳答案
第一个值为 1 而不是 1001 的 Hibernate 错误 HHH-4228 ,状态为 Won't fix。在您的情况下正确的第一个值是 1001 而不是 1000,因为 initialValue
初始化存储返回的 last 值的列(而不是要返回的下一个值)。
在 persistence.xml 中使用以下内容(错误报告中也有建议)将解决第一个值的问题:
<property name="hibernate.id.new_generator_mappings" value="true"/>
allocationSize
的含义可能在问题中被误解了。这不是递增的步骤。这意味着从表中的一个数据库查询分配了多少个值。这是为了避免每次在新实体需要 id 值时进行额外查询的优化。
副作用是应用程序的重新启动通常会导致序列出现漏洞:
关于mysql - Hibernate JPA不支持@TableGenerator的 "initialValue"元素吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13303338/
我已经成功地将 @TableGenerator 与 EclipseLink 结合使用: @Id @TableGenerator(name = "ID_GEN", table = "se
我将尝试使用表生成器生成主键。但是当我在我的表中插入 6 条记录时,primaryKey 表只显示一个值。这是下面的代码 我的实体类 package com.generatorvaluetest.do
你能告诉我什么时候使用它吗?为什么我要创建一个新表只是为了保留主键,而现在大多数 DBMS 都支持自增并且你可以轻松调整它? 最佳答案 TableGenerator 的主要优点是可移植性,这是保证适用
我有一个表,该表具有使用表生成器生成的主键: @TableGenerator(名称 =“resourceIdGenerator”,表 =“SEQUENCE”,pkColumnName =“NAME”,
我有下面的实体,它使用 TABLE 策略来生成 id,并且工作得很好。 @Entity @Table(name = "Test_Table") public class SomeEntity impl
我有一个带有@Id 和@TableGenerator 的“狗”实体 ... @TableGenerator(table = "seq", name = "dog_gen", pkColumnName
将依赖项从 Spring 4.1.6.RELEASE 更新到 5.1.4.RELEASE 并将 Hibernate 4.3.9.Final 更新到 5.4.1.Final 后,我的一些测试用例开始失败
@TableGenerator 技术生成主键有什么好处?为什么我们使用这种技术以及如何使用用于存储生成器的序列名称和值的第三个表来获取数据? 最佳答案 来自链接。 http://en.wikibook
我在我的项目中使用TableGenerator,下面是相同的代码片段。 @GeneratedValue(strategy = GenerationType.TABLE, generator =
在尝试在表中保存新行时,我收到重复的 id 错误并且无法保留数据。它位于我们的舞台环境中,因此我目前无法访问日志,尽管我正在尝试暂时获取它以解决此问题。到目前为止我只有基本的错误消息: Duplica
我正在尝试使用 hibernate JPA 到 Tomcat 中开发后端应用程序。从现在开始,它在使用 JPA 功能的测试中运行良好,并且没有 JPA 服务的第一个版本现在正在运行(文件上传、下载等)
我有以下实体: @Entity @Table(name = "sales", schema = "cust_tables") @Multitenant(MultitenantType.TABLE_PE
我希望我的数据库中所有生成的主键都是负整数。 我定义了一个 TableGenerator: 我假设这会从 -1000000 开始生成第一个 key 并将每个 ID 递增 1。因此下一个 ID 将是
我有一个 JPA 实体,其 TableGenerator 的 AllocationSize=25。如果我手动更新 TableGenerator 表并为其下一个 ID 起始范围指定一个新值,则在当前范围
我有一个具有以下主键生成策略的实体类 @Id @Column(name = "id", nullable = false) @TableGenerator(name = "USERGENERATOR"
这是 JPA 实体架构的摘录 @Entity @Table(name="customer") public class Customer implements Serializ
我有一个基于 Spring 的应用程序,它使用 JPA 2.1 作为持久层。我使用 @TableGenerator 和 @GenerateValue 注释来处理主键 ID 生成。 这些是注释: @Ta
我需要连接到供应商数据库并插入客户数据。用于生成新客户 ID 的序列表存储最后使用的 ID(不是下一个可用的)。我在 jpa 或 hibernate 文档中找不到任何指示告诉 hibernate 将
我在 Spring Boot 1.4.0.RELEASE 的应用程序中使用 hibernate 。 索引的实体看起来类似于: @Entity(name = "SearchableTariffItem"
我们从 Hibernate 4 迁移到 5,一个主要问题是新的生成器,它生成表行的 ID。我们的旧生成器都是基于表的,比如 @TableGenerator(name = TABLE_NAME + "_
我是一名优秀的程序员,十分优秀!