请教hibernate懒加载报错报出的两个Warning

求助hibernate报错_百度知道
求助hibernate报错
提问者采纳
如果在clean操作后面又进行了saveOrUpdate(object)等改变数据状态的操作.hibernate.IdentifierGenerationException.id.sf.hibernate: … not found是因为XML配置文件没找到所致. org.cfg,一般取其值为native .refresh(object).MappingException 当出现net.hibernate;Hibernate,或者没将其加入hibernate。5,对其子元素;异常: Resource.sf.MappingException.hibernate. SQL Grammer Exception。(2)使用session.sf,一般是由如下问题引起:异常时.id,则会报错所以当你使用saveOrUpdate(object)之前还需要判断一下;(2)数据库的配置不合法,Could not execute JDBC batch update 当出现SQL Grammer Exception:…异常时一般是因为映射文件出现错误、hilo,一般是因为元素配置不正确.MappingException,更多的可参考hibernate参考文档: Could not find a setter for property name in class …时。 当出现net,有可能是放置目录不正确,不能使用session.refresh(object)因为该方法是从hibernate的session中去重新取object。(3)session. net. a different object with the same identifier value was already associated with the session 当出现a different object with the same identifier value was already associated with the session时.PropertyNotFoundException: Error reading resource.xml文件)配置有误,其中class的取值可以为increment,或者说是配置有误,有可能会报出&quot.hibernate:(1)使用session.1小节、native……等.xml中。具体可参考2,推荐使用,一般是因为在hibernate中同一个session里面有了两个相同标识但是是不同实体.2.IdentifierGenerationException 当出现org。2.hibernate。 解决方案.merge(object).xml文件配置有误、sequence. net:(1)SQL语句中存在语法错误或是传入的数据有误。较容易出现的有数据表的映射文件(,如果session中没有这个对象.PropertyNotFoundException 当出现net,原因一般是因为XML映射文件中的属性与对应的Java类中的属性的getter或setter方法不一致.sf.clean()。3.hibernate,当object不是数据库中已有数据的对象的时候.cfg: ids for this class must be manually assigned before calling save(),Hibernate里面自带的方法,元素缺少其子元素的配置引起:元素映射了相应数据库表的主键字段、identity。4.2。 有如下几种解决方案;Found two representations of same collection&quot,Could not execute JDBC batch update异常时,hbm.sf
中国移动互联网研发培训领导品...
主营:iOS培训,Android培训,HTML5培训,UI培训
其他类似问题
为您推荐:
等待您来回答
下载知道APP
随时随地咨询
出门在外也不愁使用hibernate是报出重复的实体类异常 下边有图片 哪位大神可以给看一下 谢谢!_百度知道
使用hibernate是报出重复的实体类异常 下边有图片 哪位大神可以给看一下 谢谢!
com/zhidao/wh%3D450%2C600/sign=37e5d365f5deb48ffb3ca9dac52f161f/0d338744ebf81a4c9b10a5cdd12a0://c.jpg" target="_blank" title="点击查看大图" class="ikqb_img_alink"><a href="http<a href="http.baidu
提问者采纳
个错,导致执行时重复读取配置你的异常没贴完整,我只能猜测你的District类重复配置.、真的是重复地定义了数据库映射文件2;.addClass(Medicine.class).可能的原因是1,仔细对照你出错的实体类与映射文件中的配置还有Duplicate 是重复的意思 、使用类似这种config,已至于找不到映射文件对应的数据库4、缺少或重复定义某些字段3、数据访问方式配置错误,Duplicate class&#47.,映射文件中存在错误,肯定是你粗心导致的;操作
提问者评价
嗯 自己没人品。。我把那些东西复制到另一个项目下重新试了一遍竟然好了。。。很醉
其他类似问题
为您推荐:
实体类的相关知识
等待您来回答
下载知道APP
随时随地咨询
出门在外也不愁急!初学Hibernate,弄了2天,找不到错误...
[问题点数:20分,结帖人IT_GoRight]
急!初学Hibernate,弄了2天,找不到错误...
[问题点数:20分,结帖人IT_GoRight]
不显示删除回复
显示所有回复
显示星级回复
显示得分回复
只显示楼主
2015年8月 Java大版内专家分月排行榜第二2015年3月 Java大版内专家分月排行榜第二2015年1月 Java大版内专家分月排行榜第二2014年12月 Java大版内专家分月排行榜第二2014年11月 Java大版内专家分月排行榜第二2014年6月 Java大版内专家分月排行榜第二2014年4月 Java大版内专家分月排行榜第二2014年1月 Java大版内专家分月排行榜第二2013年11月 Java大版内专家分月排行榜第二
2015年9月 Java大版内专家分月排行榜第三2015年6月 Java大版内专家分月排行榜第三2015年5月 Java大版内专家分月排行榜第三2015年2月 Java大版内专家分月排行榜第三2014年3月 Java大版内专家分月排行榜第三2013年12月 Java大版内专家分月排行榜第三
匿名用户不能发表回复!|
每天回帖即可获得10分可用分!小技巧:
你还可以输入10000个字符
(Ctrl+Enter)
请遵守CSDN,不得违反国家法律法规。
转载文章请注明出自“CSDN(www.csdn.net)”。如是商业用途请联系原作者。关于hibernate中的commit - CSDN博客
最经项目中遇到一些问题,项目用的是hibernate来存储数据。存数据的时候会遇到一些问题。比如我想更新一些数据,我用的是hql去更新,而不是用对象去update,就会出现这样的问题。我更新后直接commit,然后对字段更新多次,更新的内容不同。数据库的内容已经更新。但是返回的数据却是各种各样。一会返回更新A的内容,一会返回更新B的内容。
测试代码如下
@RequestMapping(value=&/Test/update1&)
@ResponseBody
public boolean update1(){
Transaction tx=getSession().beginTransaction();
/*Warning w =get();
w.setFromuser(&update1&);
getSession().save(w);*/
String hql =&update Warning w set
w.fromuser=? where id=?&;
Query query = getSession().createSQLQuery(hql);
query.setString(0, &update1&);
query.setInteger(1, 28);
query.executeUpdate();
getSession().flush();
tx.commit();
getSession().close();
@RequestMapping(value=&/Test/update2&)
@ResponseBody
public boolean update2(){
Transaction tx=getSession().beginTransaction();
/*Warning w =get();
w.setFromuser(&update2&);
getSession().save(w);*/
String hql =&update Warning w set
w.fromuser=? where id=?&;
Query query = getSession().createSQLQuery(hql);
query.setString(0, &update2&);
query.setInteger(1, 28);
query.executeUpdate();
getSession().flush();
tx.commit();
getSession().close();
@RequestMapping(value=&/Test/update3&)
@ResponseBody
public boolean update3(){
Transaction tx=getSession().beginTransaction();
/*Warning w =get();
w.setFromuser(&update3&);
getSession().save(w);*/
String hql =&update Warning w set
w.fromuser=? where id=?&;
Query query = getSession().createSQLQuery(hql);
query.setString(0, &update3&);
query.setInteger(1, 28);
query.executeUpdate();
getSession().flush();
tx.commit();
getSession().close();
public void delete(){
Warning w=new Warning();
public void find(){
Warning w=new Warning();
w=(Warning) getSession().get(Warning.class, 28);
Gson gson=new Gson();
System.out.println(gson.toJson(w));
@RequestMapping(&/Test/get&)
@ResponseBody
public Warning get(){
Warning w=new Warning();
w=(Warning) getSession().get(Warning.class, 28);
Gson gson=new Gson();
System.out.println(gson.toJson(w));
上网查了资料说是hibernate的持久数据和数据库的没有同步,hibernate首先会读取session缓存中的数据,那就是session缓存没有清除,程序首先读取session中数据。但是不懂为什么会有多种数据。
网上的资料说commit是会自动flush的,清除缓存,但是经过测试,好像不是这样的,如果不手动flush的话,session还是存在缓存的,我们读到的数据还是session缓存中的数据。
commit好像还是自动关闭session的。
但是为了准确还是手动去flush和close session。说不准就数据不同步带来不必要的麻烦。第一种:可能和实现有关
WARN JDBCExceptionReporter:54 - SQL Warning: 0, SQLState: 01I01
WARN JDBCExceptionReporter:55 -
has transactions
第二种:启动经常报出这种警告
WARN org.hibernate.util.JDBCExceptionReporter - SQL Warning: 0, SQLState: 01I04
WARN org.hibernate.util.JDBCExceptionReporter - Database selected
想了解一下,如何解决两个警告,谢谢
--------------------------------------
更改下hibernate.cfg.xml中:
&property name="hibernate.connection.release_mode"&on_close&/property&
--------------------------------------
SQL 执行已经完成 但是有警告,
应该是 获取的 值被CAST函数截取造成的

我要回帖

更多关于 hibernate懒加载报错 的文章

 

随机推荐