org.hibernate.MappingException:没有JDBC类型的Dialect映射:1111

lak*_*hmi 5 java hibernate

我正在使用postgres v8.3,它有一个columntype作为XML.DDL看起来像这样:

CREATE TABLE contact (
"ID" INTEGER NOT NULL , 
"NAME" VARCHAR NOT NULL,
"Details" XML , ......
Run Code Online (Sandbox Code Playgroud)

在映射hbm.xml文件中,我将其映射为:

<key-property name="Details" type="java.lang.String" >
<column name="Details" />
</key-property>
Run Code Online (Sandbox Code Playgroud)

我想这是错误的原因:没有Dialect映射的JDBC类型:1111当我运行一个选择查询时使用:

List<?> contactList= session.createSQLQuery("select * from contact where id=" + val.getId() + " and name= '" + val.getName + "'").list();
Run Code Online (Sandbox Code Playgroud)

但是我可以将"XML"类型映射到java数据类型的另一种方式是什么?

Har*_*Joy 0

尝试在 hibernate.cfg.xml 中为 postgres 定义连接方言“ hibernate.dialect”。