如何在SpringRoo注释(或jpa注释)实体中定义一个大字符串,varchar(255)是不够的
在spring roo entity中,我定义了一个内容字段来记录文章的内容:如何在SpringRoo注释(或jpa注释)实体中定义一个大字符串,varchar(255)是不够的,jpa,spring-roo,Jpa,Spring Roo,在spring roo entity中,我定义了一个内容字段来记录文章的内容: @NotNull private String content; 但在mysql字段中,它映射到varchar(255),它太短,无法记录文章的内容,因此引发以下异常: ERROR org.hibernate.util.JDBCExceptionReporter - Data truncation: Data too long for column 'content' at row 1 我的问题是mysql中的大
@NotNull
private String content;
但在mysql字段中,它映射到varchar(255),它太短,无法记录文章的内容,因此引发以下异常:
ERROR org.hibernate.util.JDBCExceptionReporter - Data truncation: Data too long for column 'content' at row 1
我的问题是mysql中的大字符串字段类型是什么?(在access db中,它是“memo”),如何在SpringRoo中定义此注释以使其记录更多数据?谢谢一个选项是添加尺寸注释,例如
@NotNull
@Size(max = 500)
private java.lang.String content;
另一种选择是使用LOB字段:
@NotNull
@Lob
private byte[] content;
如果我需要大于255个字符的字符串字段,我通常使用LOB字段。但是,请注意,通常无法在LOB字段中搜索数据。请尝试
@Column(columnDefinition="varchar(255)")
谢谢,@Size(max=500)
对我有效,我设置了max=200000
,它被映射到Mysql LONGTEXT对象并有效。