我不知道如何設置@GenerateValue
@Id
的初始值。如何在Spring JPA for MySQL中爲@Id @GeneratedValue設置初始值?
我已經嘗試過使用GenerationType.SEQUENCE
但這不允許在MySQL
。我如何設置@GenerateValue
的初始值?
同時使用AUTO
和TABLE
我仍然不能得到初始值的任何東西,但1
開始感謝您使用表
代碼使用AUTO
@Entity
@Data
@SequenceGenerator(name = "port_gen", sequenceName = "port_gen", initialValue = 4700)
public class AppiumPort {
@Id
@GeneratedValue(strategy = GenerationType.AUTO, generator = "port_gen")
private Long port;
public AppiumPort() {
}
}
代碼
@Entity
@Data
public class AppiumPort {
@TableGenerator(name = "Address_Gen", table = "ID_GEN", pkColumnName = "GEN_NAME", valueColumnName = "GEN_VAL", pkColumnValue = "Addr_Gen", initialValue = 10000, allocationSize = 100)
@Id
@GeneratedValue(strategy = GenerationType.TABLE, generator = "Address_Gen")
private int port;
public AppiumPort() {
}
}
**更新**
的問題涉及不設置hibernate.id.new_generator_mappings = TRUE;
https://docs.jboss.org/hibernate/stable/annotations/reference/en/html/ch01.html
Application.properties爲SRING引導:
spring.jpa.properties.hibernate.id.new_generator_mappings=true
如果你設置分貝自己,你可以做到這一點你的mysql數據庫中,如果它不使用JPA/ORM產生的,它只是映射,而無需實際創建數據庫。 – Sarief
我試着用MySQL數據庫上的表生成器,它完美的工作。但我沒有用過春天。 – ujulu