如何告诉JPA首选的数据类型

2022-09-02 22:51:12

如果我使用JPA(EclipseLink)来创建表,String类型会产生varchar2(255)。我怎么能告诉JPA(通过注释)创建一个varchar2(20)属性。

如果我有一个列表JPA,创建一个BLOB(4000),但我想要一个varchar2(我的序列化对象的字符串很短)

这怎么可能?我必须手工完成吗?


答案 1

您需要使用@Column批注的 columnDefinition 属性。即

@Column(columnDefinition="varchar2(20)")

答案 2

如果我使用JPA(EclipseLink)来创建表,String类型会产生varchar2(255)。我怎么能告诉JPA(通过注释)创建一个varchar2(20)属性。

使用 可以破坏从一个数据库到另一个数据库的可移植性。对于字符串值列,首选使用元素(默认为 255):columnDefinitionlength

@Column(length=20)
String someString;