总结Action传递给jsp的值的接收问题

来源:互联网 发布:java urlencode 编辑:程序博客网 时间:2024/06/04 19:22
之前一直用的是这样的:在Action中getter和setter方法的变量:是对象的话(如 user),JSP页面用:User  user = (User)request.getAttribute("user");然后再用<%=user.getUserName()%>等等方法来获取其值。如果是属性值得话(如username),JSP页面用<%=request.getParameter("username")%>还可以用如下的方法:ServletActionContext.getRequest().getSession().setAttribute("SessionKey", "SessionValue");在jsp中可以用如下方法获得:session.getAttribute("user");//这样的赋值方法可以使得user在所有的JSP页面都能获取到,而不仅仅是在跳转到得JSP页面中能够获得。还有一种获取方式:JSP中的${user.username}获取还用一种:struts标签的方式,好像和上面的方法差不多。        <s:textfield name="user.username" label="用名"></s:textfield>            <s:textfield name="user.password" label="密码"></s:textfield>         <s:hidden name="user.id"></s:hidden>   如果是List的对象的话,除了session和request.getAttribute("userList")的方式外,struts标签还可以这么用:<s:iterator value="userList">        <tr >            <td>            <a href='<s:url action="getUser" ><s:param name="id" value="id" /></s:url>'>            修改            </a>            </td>            <td><s:property value="id"/></td>            <td><s:property value="name"/></td>            <td><s:property value="password"/></td>            <td><s:property value="address"/></td>                        <td><a href='<s:url action="deleteUser"><s:param name="id" value="id" /></s:url>'>删除</a></td>        </tr>    </s:iterator>       


在vm中是这样使用的:

  #foreach($user in $userList)               <tr>                <td>                    <a href="modify.do?id=$user.id"> 修改</a>                </td>                <td>${user.id} </td>                <td>${user.username}</td>                <td>${user.address}</td>                <td>                    <a href="delUser.do?id=${user.id}">删除</a>                </td>            </tr>        #end


原创粉丝点击