Hibernate一对多查询,SQL语句已经打印出来了而且一的一方也能打印就是多的一方不打印数据,lazy已经改了
订单表和订单信息表,两个表是一对多的关系,也就是说一笔订单中存在多个商品,两个表是通过订单表中的编号进行连接的。Dingdan.hbm.xml<setname="ding...
订单表和订单信息表,两个表是一对多的关系,也就是说一笔订单中存在多个商品,两个表是通过订单表中的编号进行连接的。
Dingdan.hbm.xml
<set name="dingdanxinxi" cascade="all" inverse="true" lazy="false">
<key column="bianhao"></key>
<one-to-many class="com.test.model.Dingdanxinxi"/>
</set>
Dingdanxinxi.hbm.xml
<many-to-one name="dingdan" class="com.test.model.Dingdan" column="bianhao" property-ref="bianhao"></many-to-one>
Hibernate的版本是3.2,要是按照订单编号查询能查到Dingdan表信息可是查不到Dingdanxinxi表的信息,打印dingdan.getDingdanxinxi().size()的结果为0,然而用订单的ID进行关联,两个表的信息就都能查到,各位帮忙分析一下什么原因呀 展开
Dingdan.hbm.xml
<set name="dingdanxinxi" cascade="all" inverse="true" lazy="false">
<key column="bianhao"></key>
<one-to-many class="com.test.model.Dingdanxinxi"/>
</set>
Dingdanxinxi.hbm.xml
<many-to-one name="dingdan" class="com.test.model.Dingdan" column="bianhao" property-ref="bianhao"></many-to-one>
Hibernate的版本是3.2,要是按照订单编号查询能查到Dingdan表信息可是查不到Dingdanxinxi表的信息,打印dingdan.getDingdanxinxi().size()的结果为0,然而用订单的ID进行关联,两个表的信息就都能查到,各位帮忙分析一下什么原因呀 展开
5个回答
展开全部
按照你这种情况跟我以前的比,如果不报错的话,那就是数据有问题啊,你想如果你查一方,想同时显示多方,没有设置lazy的话,肯定报错,你说你lazy改了,我想的话可能还有一种情况就是看你hibernate是什么版本的,我记得hibernate3的lazy属性自动为false,而hibernate2是为true的。你看你有没有弄错,如果设置好的没有报错的话,那你就到到你输出方法里面输出一下list看看里面有没有数据,如果没有,那就是映射的有问题,有的话那就简单了,页面的问题,这种BUG很好解决的。
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
你在web.xml中写个懒加载的拦截器试试
<filter>
<filter-name>hibernateFilter</filter-name>
<filter-class>org.springframework.orm.hibernate3.support.OpenSessionInViewFilter</filter-class>
</filter>
<filter-mapping>
<filter-name>hibernateFilter</filter-name>
<url-pattern>/*</url-pattern>
</filter-mapping>
<filter>
<filter-name>hibernateFilter</filter-name>
<filter-class>org.springframework.orm.hibernate3.support.OpenSessionInViewFilter</filter-class>
</filter>
<filter-mapping>
<filter-name>hibernateFilter</filter-name>
<url-pattern>/*</url-pattern>
</filter-mapping>
本回答被提问者采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
一对多?
你使用反转了么? invoke="true" 了么》?
这样在添加数据的时候,就将外键的维护交由多的一方管理。
而且你书的lazy 是那个lazy啊?
是<one-to-many> 中的lazy 么?
你使用反转了么? invoke="true" 了么》?
这样在添加数据的时候,就将外键的维护交由多的一方管理。
而且你书的lazy 是那个lazy啊?
是<one-to-many> 中的lazy 么?
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
不给代码怎么知道问题出在哪啊?
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询