首页 > Web开发 > 详细

hibernate1相关错误

时间:2019-07-27 15:22:23      阅读:140      评论:0      收藏:0      [点我收藏+]

1、

初次使用hibernate,在配置文件时出现下面的异常:

org.hibernate.boot.InvalidMappingException: Could not parse mapping document: com/myhibernatedemo/entity/Product.hbm.xml (RESOURCE)

*********************
Caused by: org.hibernate.boot.MappingException: Unable to perform unmarshalling at line number 6 and column 57. Message: cvc-pattern-valid: 对于类型为 ‘ClassNameType‘ 的模式 ‘([a-zA-Z_$][a-zA-Z\d_$]*\.)*[a-zA-Z_$][a-zA-Z\d_$]*‘, 值 ‘com/myhibernatedemo/entity‘ 不具有面有效性。 : origin(com/myhibernatedemo/entity/Product.hbm.xml)


错误原因是:不能解析映射文件。如下图所示,package的路径格式不支持,将上图标识格式更改成下图即可

 技术分享图片

不知道为什么上传的图片一直不能显示,就用文字说明:将Product.hbm.xml的package="com/myhibernatedemo/entity"更改为package="com.myhibernatedemo.entity"即可。

 

2、

技术分享图片

 

这是主要是因为数据库驱动在5.0之前和之后去所改变,根据自己的数据库驱动做修改

org.hibernate.dialect.MySQL5Dialect:新版本的mysql方言 
org.hibernate.dialect.MySQLDialect :老版本的mysql方言 

如果你配置的是老版本的方言,可以修改成新版本的方言。 

注:  hibernate运行通过,但没有数据库没有创建表,可能原因

1.主键使用字符串过长
2.bean属性中有关键字

3.hibernate.cfg.xml文件中缺少了一个自动创建数据库表的语句:

        <property name="hibernate.hbm2ddl.auto">update</property>

4.检查setter//getter方法,看是否有例如boolean属性的getter方法为isXXX
5.修改数据库方言将数据库方言,即新老版本问题。

hibernate1相关错误

原文:https://www.cnblogs.com/zyk2019/p/11255173.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!