No Dialect mapping for JDBC type :0
程序员文章站
2022-06-13 12:17:58
...
data service 架构:spring Roo + hibernate+mysql
在调用stored procedure的时候,出现:No Dialect mapping for JDBC type:0
通过反编译java.sql.Types.java得知type:0 对应于NULL
原因是java中的java.sql.Types中定义了NULL的解析,但是hibernate 的dialect不能够支持,在使用spring roo 配置项目的时候,使用的,使用的jpa为hibernate, 那么默认的persistent.xml中有一行为:
<property name="hibernate.dialect" value="org.hibernate.dialect.MySQL5InnoDBDialect"/>
这个是用来定义hibernate的dialect,我们可以重新实现这个dialect然后重新给这个value赋值:
然后将persistent.xml中的这个属性,改成 MysqlDialect class所在的位置就ok了
这样就能够使 hibernate支持NULL type的类型值了。
除此之外,我们还需要进一步做修改,在定义sessionFactory的applicationContext.xml中,也需要将Dialect定义为指向我们新定义的类,才能够完全解决这个问题。
推荐阅读
-
No Dialect mapping for JDBC type :0
-
No Dialect mapping for JDBC type:_MySQL
-
No Dialect mapping for JDBC type:_MySQL
-
JPA之"org.hibernate.MappingExceptception: No Dialect mapping for JDBC type: 1111"问题
-
No Dialect mapping for JDBC type -9
-
Type handler was null on parameter mapping for property '__frch_id_0'
-
Type handler was null on parameter mapping for property '__frch_item_0'. It was either not specified
-
关于 mybatis 中Type handler was null on parameter mapping for property '__frch_id_0'类似的错误
-
mybatis报错:Type handler was null on parameter mapping or property ‘__frch_xxx_0’