一个页面传递过来一个request值,还传递过来一个Session值,session是个List类型:
我要session里的值和request的值用<s:if>作比较,怎么作?
我是这样写的:
一个action里边有request和sessionpackage com.action;import java.util.TreeMap;import com.dao.OpDB;public class UpdateUserShowAction extends MySuperAction {
private String userId;
private String userName;
private String jobId;
private String deptId;
private String memo;
String sql1="select * from tbInfDept";
Object[]params1;
String sql2="select * from tbInfJob";
Object[]params2;
public String getUserId() {
return userId;
}
public void setUserId(String userId) {
this.userId = userId;
}
public String getUserName() {
return userName;
}
public void setUserName(String userName) {
this.userName = userName;
}
public String getJobId() {
return jobId;
}
public void setJobId(String jobId) {
this.jobId = jobId;
}
public String getDeptId() {
return deptId;
}
public void setDeptId(String deptId) {
this.deptId = deptId;
}
public String getMemo() {
return memo;
}
public void setMemo(String memo) {
this.memo = memo;
}
public String execute()throws Exception
{
session.remove("deptList");
OpDB opdb=new OpDB();
TreeMap treeMap=new TreeMap();
params1=new Object[0];
treeMap=opdb.OpGetDeptList(sql1, params1);
session.put("deptList", treeMap);
//_____________________________|放入部门列表
session.remove("jobList");
TreeMap treeMap2=new TreeMap();
params2=new Object[0];
treeMap2=opdb.OpGetJobList(sql2, params2);
session.put("jobList", treeMap2);
//_____________________________|放入职位列表
return SUCCESS;
}

}
JSP里作比较,根据比较显示出来下拉列表的首先值不同。<%@ page language="java" import="java.util.*" pageEncoding="GBK" contentType="text/html;charset=GBK"%>
<%@ taglib prefix="s" uri="/struts-tags" %>
<%
String path = request.getContextPath();
String basePath = request.getScheme()+"://"+request.getServerName()+":"+request.getServerPort()+path+"/";
%><!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
  <head>
   
   <style type="text/css">
<!--
body,td,th {
font-size: 12px;
color: #000000;
}body {
background-color: #EEEEFF;
margin-left: 0px;
margin-top: 0px;
margin-right: 0px;
margin-bottom: 0px;
}
-->
</style>
    <base href="<%=basePath%>">
    
    <title>更新用户</title>
    
<meta http-equiv="pragma" content="no-cache">
<meta http-equiv="cache-control" content="no-cache">
<meta http-equiv="expires" content="0">    
<meta http-equiv="keywords" content="keyword1,keyword2,keyword3">
<meta http-equiv="description" content="This is my page">
<!--
<link rel="stylesheet" type="text/css" href="styles.css">
-->  </head>
  
  <body>&nbsp; 
  <jsp:include page="/jsp/view/top.jsp"/>
  <center>
    更新用户信息<br>
    <font color="red"><s:actionerror/></font>
    <form action="addUserPo.action" method="post">
     <table border="1" width="50%"  bordercolor="#000000" >
     <tr>
     <td>
     用户ID
     </td>
     <td>
     <input type="text" value="${requestScope.userId }" name="userId" size="15" readonly>
     </td>
     <td>
     员工的编号,不能更改,如需要更改请删除这个用户。
     </td>
     </tr>
     <tr>
     <td>
     用户名
     </td>
     <td>
     <input type="text" value="${requestScope.userName }" name="userName" size="15">&nbsp;<font color="red">*</font>
     </td>
     <td>
     用户的真实姓名
     </td>
     </tr>
    
     <tr>
     <td>
     用户部门:
     </td>
     <td>
     <select name="deptId">
      <s:iterator value="#session.deptList">
       <option value="<s:property value='key'/>"><s:property value="value"/></option>
     </s:iterator>
   
</select>
&nbsp;<font color="red">*</font>
     </td>
     <td>
     用户所在的部门
     </td>
     </tr>
   <tr>
     <td>
     所在职位
     </td>
     <td>
    
     <select name="jobId">
  <s:iterator value="#session.jobList">
       <option value="<s:property value='key'/>" ><s:property value="value"/></option>
     </s:iterator>
</select>
&nbsp;<font color="red">*</font>
     </td>
     <td>
     用户的职位, 请选择
     </td>
     </tr>
     <tr>
     <td>
     备注信息
     </td>
     <td>
     <input type="text" value="${requestScope.memo }" name="memo" size="30">
     </td>
     <td>
     用户的备注描述。
     </td>
    
     </tr>
     <tr>
     <td>
     <input type="submit" value="提交">
     </td>
     <td>
     <input type="reset" value="重写">
     </td>
     <td>
    
     </td>
     </tr>
     </table>
    </form>
    </center>
    
  </body>
</html>

解决方案 »

  1.   

    此回复为自动发出,仅用于显示而已,并无任何其他特殊作用
    楼主【shenghy36】截止到2008-07-08 15:27:27的历史汇总数据(不包括此帖):
    发帖的总数量:8                        发帖的总分数:80                       每贴平均分数:10                       
    回帖的总数量:7                        得分贴总数量:3                        回帖的得分率:42%                      
    结贴的总数量:6                        结贴的总分数:50                       
    无满意结贴数:2                        无满意结贴分:2                        
    未结的帖子数:2                        未结的总分数:30                       
    结贴的百分比:75.00 %               结分的百分比:62.50 %                  
    无满意结贴率:33.33 %               无满意结分率:4.00  %                  
    楼主加油
      

  2.   

    没看到你的 <s:if...用法大概是:<s:if test="(这里是要比较的)">
    </s:if><s:if test="">
      ...
    </s:if>
    <s:elseif test="">
      ...
    </s:elseif>
    <s:else>
      ...
    </s:else>
      

  3.   

    举个例子
    <%
    request.setAttribute("a1","aaa");
    request.getSession().setAttribute("a2","bbb");
    %>
    <s:if test="%{#request.a1==#session.a2}">相等</s:if>
    <s:elseif test="%{#request.a1!=#session.a2}">不等</s:elseif>
    <s:else>xxx</s:else>