
我说个思路:把用户名也就是session中的userName,在生成页面呢的时候作为一个DOM元素的VALUE,然后通过JS来判断,先取VALUE值,然后判空,若不为空,设置CSS的DISPLAY属性,即DIV1即用户名显示 DIV2登陆框不显示 反之,DIV1不显示,DIV2显示
<c:if test="${sessionScopesubList!=null}">
<c:forEach var="message" items="${sessionScopesubList}">
<tr align="center">
<td height="30" bgcolor="#FFFFFF">
<a href="#" class="title">${messagetitle}</a>
<input type="hidden" value="${messageid}"/>
</td>
<td bgcolor="#FFFFFF">
<fmt:formatDate pattern="yyyy-MM-dd" value="${messagedate}"></fmt:formatDate>
</td>
</tr>
</c:forEach>
</c:if>
// subList 你的集合名称。message 你的实体类名称,message后面的是该实体类的变量。方法有很多种,这是使用jstl标签的遍历。
根据功能可以分为五大类:
1、核心标签
2、格式化标签
3、SQL 标签
4、XML 标签
5、JSTL 函数
一、核心标签
1、<c:out />标签会自动忽略XML标记字符,所以它们不会被当做标签来处理。标签用来显示一个表达式的结果,与<%= %>作用相似,它们的区别就是<c:out>标签可以直接通过"" *** 作符来访问属性。
<c:out>标签有如下属性:
scope 的作用域大小依次为:
application > session > request > page(默认)
jsp 处理变量的作用域先后依次为:
page(默认) -> request -> session -> application
2、<c:set>标签用于设置变量值和对象属性。
3、<c:remove>标签用于移除一个变量。
4、<c:catch> 标签主要用来处理产生错误的异常状况,并且将错误信息储存起来。
5、<c:choose>标签与Java switch语句的功能一样,用于在众多选项中做出选择。
switch语句中有case,而<c:choose>标签中对应有<c:when>,switch语句中有default,而<c:choose>标签中有<c:otherwise>。
<c:when>标签的属性如下:
6、<c:import>标签提供了所有<jsp:include>行为标签所具有的功能,同时也允许包含绝对URL。
<c:import>标签有如下属性:
7、<c:forEach>标签用作迭代一个集合中的对象。
语法格式:
<c:forTokens
items="<string>"
delims="<string>"
begin="<int>"
end="<int>"
step="<int>"
var="<string>"
varStatus="<string>">
<c:forEach>标签有如下属性:
c:forEach varStatus 属性
current : 当前这次迭代的(集合中的)项
index : 当前这次迭代从 0 开始的迭代索引
count : 当前这次迭代从 1 开始的迭代计数
first : 用来表明当前这轮迭代是否为第一次迭代的标志
last : 用来表明当前这轮迭代是否为最后一次迭代的标志
begin : 属性值
end : 属性值
step : 属性值
例如:
<c:foreach items="${sessionScopeuserList}" var="userItem" begin="1" end="10" step="3" varStatus="userStatus"> XXX </c:foreach>
实例解读: 对 session 对象存储的 userList 集合对象进行遍历,每次访问的项暂时存储在 userItem 变量中,从索引 1 开始至索引 10 进行访问,但不是依次访问,每隔 3 个元素访问一次。每次访问项的状态相关值由 userStatus 对象暂存。
<c:foreach> 的 varStatus 属性暂存项的相关状态属性,可由 EL 表达式引用。
${userStatusindex} 此项的索引,从0开始
${userStatuscount} 此项的计数序号,从1开始
${userStatusfirst} 此项是否是第一项,布尔值
${userStatuslast} 此项是否是最后一项,布尔值
${userStatusbegin} 此次迭代的起始索引,对应<c:foreach>中begin属性值
${userStatusend} 此次迭代的终止索引,对应<c:foreach>中end属性值
${userStatusstep} 此次迭代的跳跃步伐,对应<c:foreach>中step属性值
8、<c:forTokens>标签通过指定分隔符将字符串分隔为一个数组然后迭代它们。
<c:forTokens
items="<string>"
delims="<string>"
begin="<int>"
end="<int>"
step="<int>"
var="<string>"
varStatus="<string>">
9、<c:url>标签将URL格式化为一个字符串,然后存储在一个变量中。
这个标签在需要的时候会自动重写URL。
var属性用于存储格式化后的URL。
<c:url>标签只是用于调用responseencodeURL()方法的一种可选的方法。它真正的优势在于提供了合适的URL编码,包括<c:param>中指定的参数。
<c:url>标签有如下属性:
10、<c:param>标签用于在<c:url>标签中指定参数,而且与URL编码相关。
在<c:param>标签内,name属性表明参数的名称,value属性表明参数的值。
语法格式:
<c:param name="<string>" value="<string>"/>
<c:param>标签有如下属性:
11、<c:redirect>标签通过自动重写URL来将浏览器重定向至一个新的URL,它提供内容相关的URL,并且支持c:param标签。
c:redirect标签有如下属性:
二、格式化标签
JSTL格式化标签用来格式化并输出文本、日期、时间、数字。引用格式化标签库的语法如下:
<%@ taglib prefix="fmt uri=">
假如有session属性:sessionsetAttribute("currentUser","admin")
那么在用el表达式输出时这样写:${sessionScopecurrentUser}他在页面上就会显示admin
上面这句el表达式的意思是,将session范围的,以currentUser为name的value显示出来
如果存储的value是个类对象,例如:UserVo user = new UserVo(); UserVo 中有个属性叫username,还有个叫password,
sessionsetAttribute("curuser",user);//存储当前登录用户的用户名和密码
取出显示user中的用户名和密码是就是这样写的:
用户名:${sessionScopecuruserusername}
密码:${sessionScopecuruserpassword}
这个挺简单的呀,你只要稍为看下书很容易学的。
以上就是关于怎么把从session获取的值放入hidden中全部的内容,包括:怎么把从session获取的值放入hidden中、在JSP页面用JSTL向Servlet传值问题。。。、Ext 怎么读取 JAVA session 中的值啊等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!
欢迎分享,转载请注明来源:内存溢出
微信扫一扫
支付宝扫一扫
评论列表(0条)