当前位置:首页 >> 网络编程

Action中ArrayList显示到JSP页面的具体实例

一、UserAction中获取到的ArrayList对象填充到UserForm中,jsp页面获取UserForm的初始值。
UserAction的部分代码:
复制代码 代码如下:
private ActionForward executeManageAction(ActionMapping mapping, ActionForm form,
   HttpServletRequest request, HttpServletResponse response) {
  UserForm userForm = (UserForm)form;
  ArrayList userlist = new ArrayList();
  SessionFactory sf= new Configuration().configure().buildSessionFactory();
  Session session=sf.openSession();
  Transaction tx=session.beginTransaction();
  String sqlQuery="from User";
  Query lQuery=session.createQuery(sqlQuery);
  userlist=(ArrayList)lQuery.list();
  tx.commit();
  session.close();
  userForm.setUserlist(userlist);
  return mapping.findForward("main_user");
 }

UsrForm的部分代码:
复制代码 代码如下:
private ArrayList userlist;
 public ArrayList getUserlist(){
  return userlist;
 }
 public void setUserlist(ArrayList userlist){
  this.userlist=userlist;
 }

JSP页面代码:
复制代码 代码如下:
    <table id="id1" style="border-right: darkgreen 1px solid;border-top:darkgreen 1px solid;border-left: darkgreen 1px solid;width:100%;
    border-bottom;darkgreen 1px solid;border-collapse:collapse" borderColor="darkgreen" cellSpacing="0" border="1">
    <logic:notEmpty name="userForm" property="userlist">
    <tr nowrap="nowrap">
    <td style="width:80px;height:16px" nowrap><b>用户名</b></td>
    <td style="width:80px;height:16px" nowrap><b>角色</b></td>
    <td style="width:84px;height:16px" ><b>姓名</b></td>
    <td style="width:88px;height:16px" ><b>电话</b></td>
    <td style="width:73px;height:16px" ><b>电子邮件</b></td>
    <td style="width:273px;height:16px" ><b>动作</b></td>
    </tr>
    <logic:iterate indexId="index" id="user" name="userForm" property="userlist">
    <tr>
      <td noWrap style="width:80px" ><bean:write name="user" property="username"/></td>
      <td noWrap style="width:80px" ><bean:write name="user" property="role"/></td>
      <td noWrap style="width:80px" ><bean:write name="user" property="name"/></td>
      <td noWrap style="width:80px" ><bean:write name="user" property="tel"/></td>
      <td noWrap style="width:80px" ><bean:write name="user" property="email"/></td>
      <td nowrap sryle="width:273px" >
      <a href="javascript:submitSid(document.fview,'<bean:write name="user" property="username"/>')">查看</a>
      <font >||</font>
      <a href="javascript:submitSid(document.fview,'<bean:write name="user" property="username"/>')">更新</a>
      <font >||</font>
      <a href="javascript:if (confirm('删除此用户么?')){ submitSid(document.fview,'<bean:write name="user" property="username"/>')}">删除</a>
      </td></tr>
      </logic:iterate>
      </logic:notEmpty>
      </table>

二、UserAction中获取到数据ArrayList对象后,把ArrayList对象存在request中,JSP页面在获取到ArrayList对象。
UserAction部分代码:
复制代码 代码如下:
 private ActionForward executeManageAction(ActionMapping mapping, ActionForm form,
   HttpServletRequest request, HttpServletResponse response) {
  UserForm userForm = (UserForm)form;
  ArrayList userlist = new ArrayList();
  SessionFactory sf= new Configuration().configure().buildSessionFactory();
  Session session=sf.openSession();
  Transaction tx=session.beginTransaction();
  String sqlQuery="from User";
  Query lQuery=session.createQuery(sqlQuery);
  userlist=(ArrayList)lQuery.list();
  tx.commit();
  session.close();
  request.setAttribute("userlist", userlist);
  return mapping.findForward("main_user");
 }

JSP部分代码:
复制代码 代码如下:
<table id="id1"  borderColor="darkgreen" cellSpacing="0" border="1">
    <tr >
    <td  ><b>用户名</b></td>
    <td  ><b>角色</b></td>
    <td  ><b>姓名</b></td>
    <td  ><b>电话</b></td>
    <td ><b>电子邮件</b></td>
    <td ><b>动作</b></td>
    </tr>
     <logic:present name="userlist">
    <logic:iterate indexId="index" id="user" name="userlist" >
    <tr>
      <td   ><bean:write name="user" property="username"/></td>
      <td   ><bean:write name="user" property="role"/></td>
      <td  ><bean:write name="user" property="name"/></td>
      <td   ><bean:write name="user" property="tel"/></td>
      <td ><bean:write name="user" property="email"/></td>
      <td  >
      <a href="javascript:submitSid(document.fview,'<bean:write name="user" property="username"/>')">查看</a>
      <font >||</font>
      <a href="javascript:submitSid(document.fview,'<bean:write name="user" property="username"/>')">更新</a>
      <font >||</font>
      <a href="javascript:if (confirm('删除此用户么?')){ submitSid(document.fview,'<bean:write name="user" property="username"/>')}">删除</a>
      </td></tr>
      </logic:iterate>
      </logic:present>
      </table>