在SSH2 中 我用hibernate 的createSqlQuery 查询出来的结果,要放在一个 实体类中(自己定义的VO类),问题就在这,
sql 语句查出来的几条为一组,每一组都有一个或两个是 这个实体类中的一个变量, 要取出这些一组的数据,分别向这个实体类对象中添加!具体该如何实现!比如,查询出来的一个集合 List高分求教!

解决方案 »

  1.   

    看你的问题描述,只能遍历查询出来的list,然后按照几条一组,自己取出相应的变量设置到实体里,在把实体保存到另一个list,最后这个list就是保存实体类的集合了
    有点不明白的地方,为何几条数据是一个实体类的相关成员呢?表的数据应该对应1条记录1个实体才对啊,由多条记录的不同字段来构成实体类,那应该考虑另建一个实体类表,通过建立字段映射关系来关联数据
      

  2.   

    仔细看看我写的内容这个是你多表查询 返回的结果是一个list 
    这里要注意 list里面是数组 使用的时候要 使用list.get(0)[0]引用里面的对象
    比如你sql关联查询一个 对象和一个字典对象
    这样 对象被取出来,字典对象也被取出来 这两个和成一个数组对象被放到list的一个item里面
    页面使用 无论那种框架 
    使用标签循环 
     <c:forEach var="asset" items="${requestScope.assetLandList}">
    asset[0].landName
    或者才Service层将list重新拆装 
      

  3.   

    LIST可直接转换为map!!map可直接转换为实体
      

  4.   

    把你的hql语句贴出来看下,你可以尝试下在hql语句里new一个你的bean,然后把值填充进去。
      

  5.   

    喔 简单~  应该就是这样吧
    String hql1="";
    Assets ast=null;
    Query query1=this.getSession().createQuery(hql);
    query.setString(0, assets.getAssetsID());
    List<Assets> list1=query.list();
    Iterator iter=list1.iterator();
    while(iter.hasNext()){
    ast=(Assets)iter.next();
    }
    return ast;