hibernate映射,关系为一对多,双向关联tuserinfo.xml<set name="article" table="T_BLOG_ARTICLE" inverse="true" lazy="false">
<key column="USER_ID" not-null="false" ></key>
<one-to-many class="com.cesed.funiu88.entity.TBlogArticle"/>
</set>tblogarticle.xml <many-to-one name="userInfo" column="USER_ID" class="com.cesed.funiu88.entity.TUserInfo" insert="false" update="false" >
</many-to-one> sql语句: select a from TUserInfo a where a.userId in (select userId from TBlogArticle)源码:List<TUserInfo> list = this.find(sql.toString());
for(int i=0;i<list.size();i++){
System.out.println(list.get(i).getUserId());
Set set = list.get(i).getArticle();
for(int j=0;j<set.size();j++){//此处输出set中存储的值
TBlogArticle icle = (TBlogArticle)set.iterator().next();
System.out.println(icle.getTitle());
}问题:
Set set = list.get(i).getArticle();
for(int j=0;j<set.size();j++){//此处输出set中存储的值
TBlogArticle icle = (TBlogArticle)set.iterator().next();
System.out.println(icle.getTitle());
}
set里存储的数据发生了重复,导致页面显示的数据都为同一条了。大侠请赐教。
<key column="USER_ID" not-null="false" ></key>
<one-to-many class="com.cesed.funiu88.entity.TBlogArticle"/>
</set>tblogarticle.xml <many-to-one name="userInfo" column="USER_ID" class="com.cesed.funiu88.entity.TUserInfo" insert="false" update="false" >
</many-to-one> sql语句: select a from TUserInfo a where a.userId in (select userId from TBlogArticle)源码:List<TUserInfo> list = this.find(sql.toString());
for(int i=0;i<list.size();i++){
System.out.println(list.get(i).getUserId());
Set set = list.get(i).getArticle();
for(int j=0;j<set.size();j++){//此处输出set中存储的值
TBlogArticle icle = (TBlogArticle)set.iterator().next();
System.out.println(icle.getTitle());
}问题:
Set set = list.get(i).getArticle();
for(int j=0;j<set.size();j++){//此处输出set中存储的值
TBlogArticle icle = (TBlogArticle)set.iterator().next();
System.out.println(icle.getTitle());
}
set里存储的数据发生了重复,导致页面显示的数据都为同一条了。大侠请赐教。
解决方案 »
免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货