//普通字符处
request.setAttribute("hello","hello world");
// html文本
request.setAttribute("bj","<font color='red'>北京欢迎你</font>");
// 测试条件控制标签
request.setAttribute("v1", 1);
request.setAttribute("v2", 2);
request.setAttribute("v3", new ArrayList());
request.setAttribute("v4", "test");
//集合
Group group=new Group();
group.setName("尚学堂");
List list=new ArrayList();
for(int i=0;i<10;i++){
User u=new User();
u.setName("User"+i);
u.setGroup(group);
list.add(u);
}
request.setAttribute("list", list);
// map
Map map=new HashMap();
map.put("key1", "v1");
map.put("key2", "v2");
request.setAttribute("map", map);
// 测试c:forToken
request.setAttribute("tokens", "1,2,3,4,5,6");
return mapping.findForward("success");
JSP中代码
<li>测试c:out</li><br>
hello(c:out):<c:out value="${hello}"></c:out><br>
hello(el表达式):${hello }<br>
hello(default="123"):<c:out value="${abc}" default="123" ></c:out><br>
hello(default="123"):<c:out value="${abc}">123</c:out><br>
bj(default):<c:out value="${bj}"></c:out><br>
bj(escapeXml="true"):<c:out value="${bj}" escapeXml="true"></c:out><br>
bj(escapeXml="false"):<c:out value="${bj}" escapeXml="false"></c:out><br>
bj(el表达式):${bj }
<p>
<li>测试c:set和c:remove</li><br>
<c:set var="temp" value="123" scope="page"></c:set>
temp:${temp }<br>
<c:remove var="temp"/>
temp:${temp }<br>
<p>
<li>测试c:if</li><br>
<c:if test="${v1 lt v2}" var="v">
v1小于v2<br>
条件表达式的值:${v }
</c:if>
<br>
<c:if test="${empty v3}">
v3为空<br>
</c:if>
<c:if test="v4">
v4为空
</c:if>
<li>测试条件控制标签c:choose,c:when,c:otherwise</li><br>
相当于if .. else ..
<c:choose>
<c:when test="${v1 lt v2}">
v1小于v2<br>
</c:when>
<c:otherwise>
v1大于v2
</c:otherwise>
</c:choose>
<c:choose>
<c:when test="${empty v4}">
v4为淡淡的<br>
v4:${v4 }
</c:when>
<c:otherwise>
v4不为空<br>
</c:otherwise>
</c:choose>
<p>
<li>测试循环控制标签for:each</li>
<table border="1">
<tr>
<td>姓名</td>
<td>年龄</td>
<td>所属组</td>
</tr>
<c:choose>
<c:when test="${empty list}">
<tr>
<td colspan="3">没有所要的数据</td>
</tr>
</c:when>
<c:otherwise>
<c:forEach var="u" items="${list}">
<tr>
<td>${u.name }</td>
<td>${u.age }</td>
<td>${u.group.name }</td>
</tr>
</c:forEach>
</c:otherwise>
</c:choose>
<p>
<li>测试循环控制标签for:each,varstatus</li>
<table border="1">
<tr>
<td>姓名</td>
<td>年龄</td>
<td>所属组</td>
</tr>
<c:choose>
<c:when test="${empty list}">
<tr>
<td colspan="3">没有所要的数据</td>
</tr>
</c:when>
<c:otherwise>
<c:forEach var="u" items="${list}" varStatus="vs">
<c:choose>
<c:when test="${vs.count mod 2 ==0}">
<tr bgcolor="red">
</c:when>
<c:otherwise>
<tr>
</c:otherwise>
</c:choose>
<td>
<c:out value="${u.name}"></c:out>
</td>
<td>
<c:out value="${u.age}"></c:out>
</td>
<td>
<c:out value="${u.group.name}"></c:out>
</td>
</tr>
</c:forEach>
</c:otherwise>
</c:choose>
</table>
<p>
<li>测试循环控制标签,普通循环</li><br>
<c:forEach begin="1" end="10">
a<br>
</c:forEach>
<p>
<li>测试循环控制标签,输出map</li><br>
<c:forEach items="${map}" var="v">
${v.key }=${v.value }
</c:forEach>
<p>
<li>c:forToken</li><br>
<c:forTokens items="${tokens}" delims="," var="v">
${v }<br>
</c:forTokens>
<%
try{
Integer.parseInt("adfafw");
}catch(Exception e){
out.println(e.getMessage());
}
%>
<p>
<li>测试c:catch</li><br>
<c:catch var="exinfo">
<%
Integer.parseInt("adfafw");
%>
</c:catch>
${exinfo }<br>
<p>
<li>测试c:url,c:param</li><br>
<c:url value="http://localhost:8092/struts_jstl/index.jsp" var="v">
<c:param name="age" value="27"></c:param>
<c:param name="name" value="guchao"></c:param>
</c:url>
${v }<br>