在Hibernate中映射NCLOB

时间:2017-12-02 18:30:56

标签: java oracle hibernate

我在Oracle表中有两列:

  • firstColumn nvarchar2
  • secondColumn nclob

班级中的映射:

@Column(length = 1000, columnDefinition = "nvarchar2 (1000)")
@Nationalized
private String firstColumn;

@Lob
@Nationalized
private String secondColumn;

Additionaly属性hibernate.use_nationalized_character_data设置为true。

更新firstColumn适用于中文字符,但DB中的secondColumn包含类似倒置问号的内容。

我尝试了许多组合注释:

@Lob
@Nationalized
@Type(type="org.hibernate.type.NClobType")
@Type(type="org.hibernate.type.MaterializedNClobType")

但没有成功。

  • DB:Oracle数据库10g企业版
  • 驱动程序:ojdbc7
  • Hibernate:5.2.1

1 个答案:

答案 0 :(得分:0)

我已经解决了我的映射问题。解决方案(解决方法?)是:

@Column(columnDefinition = "nclob", length=100000) 
@Nationalized 
private String secondColumn;