public class ModuleTest extends TestCase {
public void testShow() {
Session session = HibernateUtils.getSession();
Query query = session.createQuery("select m from Module m where m.parent is null");
for(int i = 0; i < query.list().size(); i++) {
Module module = (Module) query.list().get(i);
System.out.println(module.getmoduleName());

}
System.out.println();
System.out.println();
System.out.println();
System.out.println();
PageModel pageModel = new PageModel();
pageModel.setContent(query.list());
for(int i = 0; i < pageModel.getContent().size(); i++) {
Module module = (Module) pageModel.getContent().get(i);
System.out.println(module.getmoduleName());
}
}
}
package oa.dao.hbm;import java.util.Set;/**
 * 
 * @author lpll
 * @hibernate.class table="t_module"
 */
public class Module { /**
 * @hibernate.id generator-class="native"
 */
private int id; /**
 * @hibernate.property
 */
private String moduleName; /**
 * @hibernate.property
 */
private String url; /**
 * @hibernate.property
 */
private int orderNumber; /**
 * @hibernate.property
 */
private String moduleSerialNumber; /**
 * @hibernate.many-to-one column="pid"
 */
private Module parent; /**
 * @hibernate.set lazy="extra" inverse="true"
 * @hibernate.key column="pid"
 * @hibernate.one-to-many class="oa.dao.hbm.Module"
 */
@SuppressWarnings("unchecked")
private Set children; public int getId() {
return id;
} public void setId(int id) {
this.id = id;
} public String getmoduleName() {
return moduleName;
} public void setmoduleName(String moduleName) {
this.moduleName = moduleName;
} public String getUrl() {
return url;
} public void setUrl(String url) {
this.url = url;
} public int getOrderNumber() {
return orderNumber;
} public void setOrderNumber(int orderNumber) {
this.orderNumber = orderNumber;
} public String getModuleSerialNumber() {
return moduleSerialNumber;
} public void setModuleSerialNumber(String moduleSerialNumber) {
this.moduleSerialNumber = moduleSerialNumber;
} public Module getParent() {
return parent;
} public void setParent(Module parent) {
this.parent = parent;
} @SuppressWarnings("unchecked")
public Set getChildren() {
return children;
} @SuppressWarnings("unchecked")
public void setChildren(Set children) {
this.children = children;
}
}
package oa.util;import java.util.List;/**
 * page model,for the page
 * 
 * @author lpll
 * 
 */
@SuppressWarnings("unchecked")
public class PageModel { /**
 * content
 */
private List content; /**
 * total records of data
 */
private int totalRecords; public List getContent() {
return content;
} public void setContent(List content) {
this.content = content;
} public int getTotalRecords() {
return totalRecords;
} public void setTotalRecords(int totalRecords) {
this.totalRecords = totalRecords;
}
}
以上都是出问题的源代码,问题就出在第一个类中
如果我们把第一个for循环注释掉的话,后面放入pageModel中的数据就只有一条,如果不注释才能把所有的数据放入pageModel中的list中
想问问这是为什么,我正在做毕业设计
在线急等!!!!!
必须要马上解决

解决方案 »

  1.   

    for(int i = 0; i < query.list().size(); i++) { 
    Module module = (Module) query.list().get(i); 
    System.out.println(module.getmoduleName());} 
    Module module = (Module) query.list().get(i); 
    把定义变量放到FOR循环外面试试
      

  2.   

    不是这么个事,我最主要的目的就是要把查询出来的list放到pageModel中
    但是貌似非要遍历一遍才能完全查出来,不然的话就只能把第一条数据放入pageModel中的lis中
      

  3.   

    问题已经解决了,就是把query().list()中的数据一个一个遍历放进pageModel中的list中
    不过还是要谢谢你