List result = new ArrayList();//把有角色绑定的父节点查询出来
result= this.userRoleService.getRoleFun(roleid);//返回功能与角色集合
现在这个result的size 是2,但是我如何取这list中的对象啊属性啊。
这个是中间表
public class Role_Plate extends BaseModel { private Plate plate; private UserMag_b_RightTeam role;
 result里面就是存的plate和role 对象,现在我想取Plate 下的pid属性,怎么取。而且这个pid不是一个,是多个

解决方案 »

  1.   

    ((某某某bean) list.get(0)).get属性();
    也就是:((Plate) list.get(0)).getPid();
    get(0)能取出一行记录。你只把plate对象查出来放到list里不行么?!~
    试试,题目我没太看懂
      

  2.   

    2楼的方法就是取那些属性的
    >>>而且这个pid不是一个,是多个
    你的那多个是如何保存在PID属性中的?是“pid1,pid2,pid3”这样的形式么?
      

  3.   

    你的result里结构到底是怎么样的...
      

  4.   

    result里面放了2个对象,不知道怎么个取法,等待高手!!!
      

  5.   

    result的结构是
    elementData   |  object[10]
    size = 2
    点击开elementData   
      [0] Role_Plate  (id=199)
      [1] Role_Plate  (id=200)
    点击
    [0]
    id "2"
    plate Plate$$EnhancerByCGLIB$$84e9a827_2  (id=209)
    role UserMag_b_RightTeam$$EnhancerByCGLIB$$8b53f376_2  (id=210)
    点击plate对象所有属性都是null
    而且控制台报错
    ERROR - could not initialize proxy - the owning Session was closed
    org.hibernate.LazyInitializationException: could not initialize proxy - the owning Session was closed
      

  6.   

    我plate的对象是这么写的
    public class Plate  extends BaseModel {
     private String pid;
         private String name;。。
    晕了,问题好像连锁反映
      

  7.   

    循环result用instanceof判断对象类型,如果是plate对象的,取它的.getPid();
      

  8.   

    晕,你那是hibernate的事务处理问题...原因是你把hibernate的session关闭了,因此,你无法再去打开Role_Plate.Plate.
    这个问题我以前好象也发过,解决办法有2个
    1. 你把xml配置文件里的lazy设置成true.
    2. 自己去封装下sessionFactory.creatSession()
      

  9.   


    for(int i=0;i<result.size();i++){
      Object obj=(Object)result.get(i);
      if(obj instanceof Plate){
         //do something
      }
      if(obj instanceof Role){
         //do something
      }
    }
      

  10.   


    <%
         GetUserInfo ui = new GetUserInfo();
         List li = ui.getAllInfo();
         Iterator it = li.iterator();
         while(it.hasNext()){
         UserInfo uif = (UserInfo)it.next();
          %>
          <tr>
           <td><%=uif.getID() %></td>
           <td><%=uif.getName() %></td>
          </tr>
          <%
           }
           %>兄弟 希望对你有帮助
    试试看 研究下