我有一个Spring应用程序,该应用程序使用最初由Spring Roo创建的JPA( Hibernate )。我需要存储任意长度的字符串,因此,我用 @Lob 注释了该字段:
public class MyEntity{ @NotNull @Size(min = 2) @Lob private String message; ... }
该应用程序可以在本地主机上正常运行,但是我已将其部署到外部服务器,并且出现了编码问题。因此,我想检查存储在PostgreSQL数据库中的数据是否正确。该应用程序自动创建/更新表。并且为该字段(消息)创建了一个类型为列的列:
文字NOT NULL
问题是在存储数据后,如果我浏览表或只是对该列进行SELECT,我看不到文本,而是看到数字。这些数字似乎是存储该信息的“某处”的标识符。
谁能告诉我这些标识符的确切含义,以及是否可以通过pgAdmin或select子句查看@Lob列中存储的数据?
有没有更好的方法在JPA中存储任意长度的字符串?
谢谢。
我建议跳过“ @Lob”注释,并使用columnDefinition像这样:
@Column(columnDefinition="TEXT")
查看这是否有助于在浏览数据库本身时查看数据。