Hibernate错误
来源:互联网 发布:怎么用java编程 编辑:程序博客网 时间:2024/05/17 23:52
1.org.hibernate.PropertyAccessException: exception setting property value with
原因:数据库中一些数值字段没有设置为“允许null”。那么bean中就必须用对象如Integer而不能用int,因为Integer是允许null,int这种数据类型是没有null这种情况的,所以会出错;
解决方法:把数据库中该字段改为not null,xml也要加上not-null="true";
2.no session or session was closed
出错环境:该异常通常是出现在用Load获取信息后,在读取里面数据的时候报的错;
原因:由于Load的时候默认是不去搜索库的,等到你要使用里面的数据时,才去搜索数据库,但这时session已经被你关了;
解决方法:详见《hibernate中lazy的设置》;
3.no session or session was closed
出错环境:该异常通常是出现在调用bean中级联数据时报的错;
BUG原因:由于你搜索主表中数据的时候,Hibernate默认并不去搜索其级联数据(lazy=true时),等你要使用级联数据的时候才去搜索数据库,但这时session已经被你关了;
解决方法:详见《hibernate中lazy的设置》;
4.org.hibernate.exception.GenericJDBCException: could not execute query
出错环境:使用query.setParameter设置中文值时出错,设置字母则搜索正常;
BUG原因:由于数据库的驱动包不对;
解决方法:拷贝你连接的库中的jdbc驱动包;
5.org.hibernate.hql.ast.QuerySyntaxException: unexpected token: null
出错环境:使用session.createQuery(hql)的时候出错;
BUG原因:由于我的HQL不完整,没有加?号[from Test where username like ?];
解决方法:把HQL补充完整即可;
6.org.hibernate.exception.GenericJDBCException: Cannot open connection
出错环境:使用session.save()等等这类对库进行操作的语句时出错;
BUG原因:Hibernate获取不到数据库连接;
解决方法:查看数据库连接的信息是否正确;
7.org.hibernate.MappingException: Could not read mappings from resource
出错环境:HibernateSessionFactory.rebuildSessionFactory的时候出错
BUG原因:有很多种情况,这边列出我遇到过的
1.hibernate.cfg.xml中配置的XML文件的路径不正确;
2.同一XML在hibernate.cfg.xml写了两次;
解决方法:根据不同情况的解决方法
1.把错误的XML路径修改过来即可;
2.把重复的XML文件删除掉即可;
8.Hibernate中many-to-one报错ORA-00918: column ambiguously defined
出错环境:当使用setMaxResults和setFirstResult之后再执行查询操作时报错;
BUG原因:查看Hibernate执行的HQL会发现里面有搜索出同名字的字段,故而出错;
解决方法:XML中property和many-to-one出现相同的字段,去掉property中该关联字段即可;
原因:数据库中一些数值字段没有设置为“允许null”。那么bean中就必须用对象如Integer而不能用int,因为Integer是允许null,int这种数据类型是没有null这种情况的,所以会出错;
解决方法:把数据库中该字段改为not null,xml也要加上not-null="true";
2.no session or session was closed
出错环境:该异常通常是出现在用Load获取信息后,在读取里面数据的时候报的错;
原因:由于Load的时候默认是不去搜索库的,等到你要使用里面的数据时,才去搜索数据库,但这时session已经被你关了;
解决方法:详见《hibernate中lazy的设置》;
3.no session or session was closed
出错环境:该异常通常是出现在调用bean中级联数据时报的错;
BUG原因:由于你搜索主表中数据的时候,Hibernate默认并不去搜索其级联数据(lazy=true时),等你要使用级联数据的时候才去搜索数据库,但这时session已经被你关了;
解决方法:详见《hibernate中lazy的设置》;
4.org.hibernate.exception.GenericJDBCException: could not execute query
出错环境:使用query.setParameter设置中文值时出错,设置字母则搜索正常;
BUG原因:由于数据库的驱动包不对;
解决方法:拷贝你连接的库中的jdbc驱动包;
5.org.hibernate.hql.ast.QuerySyntaxException: unexpected token: null
出错环境:使用session.createQuery(hql)的时候出错;
BUG原因:由于我的HQL不完整,没有加?号[from Test where username like ?];
解决方法:把HQL补充完整即可;
6.org.hibernate.exception.GenericJDBCException: Cannot open connection
出错环境:使用session.save()等等这类对库进行操作的语句时出错;
BUG原因:Hibernate获取不到数据库连接;
解决方法:查看数据库连接的信息是否正确;
7.org.hibernate.MappingException: Could not read mappings from resource
出错环境:HibernateSessionFactory.rebuildSessionFactory的时候出错
BUG原因:有很多种情况,这边列出我遇到过的
1.hibernate.cfg.xml中配置的XML文件的路径不正确;
2.同一XML在hibernate.cfg.xml写了两次;
解决方法:根据不同情况的解决方法
1.把错误的XML路径修改过来即可;
2.把重复的XML文件删除掉即可;
8.Hibernate中many-to-one报错ORA-00918: column ambiguously defined
出错环境:当使用setMaxResults和setFirstResult之后再执行查询操作时报错;
BUG原因:查看Hibernate执行的HQL会发现里面有搜索出同名字的字段,故而出错;
解决方法:XML中property和many-to-one出现相同的字段,去掉property中该关联字段即可;
- Hibernate错误
- hibernate错误
- hibernate错误
- hibernate错误
- Hibernate错误
- hibernate错误
- hibernate错误
- hibernate 错误
- Hibernate 错误
- Hibernate错误
- hibernate错误
- Hibernate错误
- Hibernate错误
- Hibernate错误
- hibernate错误
- hibernate错误
- Hibernate错误
- hibernate org.hibernate.DuplicateMappingException错误
- JAVA中WebService的开发要点
- JAVA中使用Log4j日志工具
- Struts重复提交
- 如何记录自己各种账户,用户和密码?
- 关于获得用JS弹出对话框的返回值问题
- Hibernate错误
- Eclipse使用SVN
- JAVA操作COOKIE
- JAVA执行定时脚本
- CLDC http://www.itisedu.com/phrase/200605041045465.html
- 互动领导力
- Eclipse配置Hibernate
- java中文件操作大全
- YLP2440开发板的linux解读