一旦Map String的总长度大于255,JPA就无法提交事务。我正在使用JPA 2.0和Play 2 Framework。
@ElementCollection
private Map<EmailNotificationType, String> mailContents = new HashMap<>();
我试过
@Column(length = 2048)
@Lob
@MapKeyColumn(length = 2048)
我希望尽可能坚持,因为它的大小是动态的。
答案 0 :(得分:1)
我认为您正在使用varchar(255)
。使用text
列代替varchar(255)
。
在PostgreSQL中总是使用文本(除非当然有一个真正的长度约束)。
答案 1 :(得分:1)
对于那些通过谷歌登陆的人:
答案是:
@Column(columnDefinition =“TEXT”)
或
@Column(columnDefinition =“LONGTEXT”)
之前必须删除数据库的旧DB内容,例如create-drop。更新无效。