具体问题是这样的:
有多个list,需要在同一个jsp页面上显示。用一个<logic:iterater>只能写出一个list的内容,而用两个<logic:iterater>,只显示第一个<logic:iterater>的内容。所以不知道该用什么办法。举例说明:我有两张相关联的表,A和B,其中A的外键是B的主键,表A中有字段aname表B中有字段bname。我根据A中某个字段的值,对A进行检索,检索到的值是一个list(设为alist),然后根据alist中某个元素的外键(设为Bid)对B表进行检索,得到blist。现在,我要将aname和bname显示在一个jsp页面上。请问有什么方法?另,我现在用的检索方法是先对A表进行检索,然后对B表进行检索。有没有别的办法对两表进行关联检索。或者别的办法?

解决方案 »

  1.   

    既然A的外键是B的主键如此,那你就一条SQL句,把两个表关联起来,取出想要的字段就行了。
    定义一个JAVABEAN,属性对应你取出的字段。
    然后把JAVABEAN放入List中,就只用一个List.如果你非要用两个List, 在JSP页面处理也是一样的道理,只过你分别迭代两个List而以
      

  2.   

    楼上的方法既可。
    就是一个sql就解决了
    select * from 表1 left join 表2 on 表1.主键=表2.外键
    剩下的就是在你的jsp页面取出你对应list的属性就OK了。
      

  3.   

    我现在用一个list得到了所要的数据,但是在页面上显示时还是出异常,显示相关的property没有get方法。
      

  4.   

    可能我之前说得不清楚。
    类似于这样的情况:
    一张user表,一张role表。
    user表中有userid,username,roleid三个字段。role表中有roleid,rolename两个字段。
    我的检索语句是这样的:
    select u.username,r.rolename from User u,Role r where u.userid=:userid and r.roleid=(select u.roleid from User u where u.userid=:userid)
    ******省略部分代码******
    List userRolelist = null;
    userRolelist = query.list();问题:现在我要将userRolelist中的数据输出到页面上去,就报异常没有get方法。是不是应该要加一个与userRolelist对应的实体类?具体应该怎么加?
      

  5.   

    对返回一些list到页面,然后用<logic:iterater>不可以显示??