Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/326.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/postgresql/9.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java JPA/Hibernate:StringClobType已弃用_Java_Postgresql_Hibernate_Jpa_Spring Boot - Fatal编程技术网

Java JPA/Hibernate:StringClobType已弃用

Java JPA/Hibernate:StringClobType已弃用,java,postgresql,hibernate,jpa,spring-boot,Java,Postgresql,Hibernate,Jpa,Spring Boot,我最近升级了SpringBoot,随之而来的是hibernate升级。不幸的是,实体列@Type(StringClobType)注释已被弃用。文档告诉我需要将其切换到materializedClobType 不幸的是,这破坏了我的申请 我正在使用PostgreSQL 9.5。StringClobType注释在数据库中创建了一个text类型,允许我在字段中存储长文本。不幸的是,现在当Hibernate需要某种LOB id时,字符串文字返回 这就产生了错误:类型long的值不正确映射到PG的Text

我最近升级了SpringBoot,随之而来的是hibernate升级。不幸的是,实体列
@Type(StringClobType)
注释已被弃用。文档告诉我需要将其切换到
materializedClobType

不幸的是,这破坏了我的申请

我正在使用PostgreSQL 9.5。
StringClobType
注释在数据库中创建了一个
text
类型,允许我在字段中存储长文本。不幸的是,现在当Hibernate需要某种LOB id时,字符串文字返回


这就产生了错误:
类型long的值不正确

映射到PG的
Text
数据类型的Hibernate
@type
值是
org.Hibernate.type.TextType
。这是你应该使用的


值得一提的是,这是
org.hibernate.type.MaterializedClobType
的兄弟,它映射到
CLOB
;两者都是org.hibernate.type.AbstractLongStringType的子类映射到PG的
Text
数据类型的hibernate
@type
值是
org.hibernate.type.TextType
。这是你应该使用的


值得一提的是,这是
org.hibernate.type.MaterializedClobType
的兄弟,它映射到
CLOB
;两者都是
org.hibernate.type.AbstractLongStringType

的子类,Postgres在记录其扩展数据类型(如
text
如何映射到JDBC方面做得很差,但从外观和声音上看,似乎
org.hibernate.type.TextType
可能是映射
text
类型列的选择。Hibernate说它映射到JDBC的
LONGVARCHAR
类型。不清楚该类型的特征是否与PG的
Text
完全匹配,但它们似乎很接近。您可以在成员变量上方提到@Lob annotation。在将对象持久化到数据库中时,Hibernate会自动将CLOB作为字符串,如果字符串超出其限制,则会将输入作为数据库中的文本。@JohnBollinger,你说得对极了。非常感谢。请将此添加为合法答案,我会将其标记为已接受。Postgres在记录其扩展数据类型(如
text
如何映射到JDBC方面做得很差,但从外观和声音上看,似乎
org.hibernate.type.TextType
是映射
text
类型列的可能选择。Hibernate说它映射到JDBC的
LONGVARCHAR
类型。不清楚该类型的特征是否与PG的
Text
完全匹配,但它们似乎很接近。您可以在成员变量上方提到@Lob annotation。在将对象持久化到数据库中时,Hibernate会自动将CLOB作为字符串,如果字符串超出其限制,则会将输入作为数据库中的文本。@JohnBollinger,你说得对极了。非常感谢。请加上这是一个合法的答案,我会把它标记为接受。