JSTL的使用

	*****Action中的处理:**************
//====普通字符串======//
request.setAttribute("hello", "Hello World");
//====对象===============//
User user=new User();
user.setUsername("wulihai");
user.setAge(25);
Group group=new Group();
group.setName("地下党");
user.setGroup(group);
//=====以上是业务逻辑处理,应该单独放入一个业务处理类中======
request.setAttribute("user", user);
//=======Map==============//
Map elMap=new HashMap();
elMap.put("key1", "value1");
elMap.put("key2", "value2");
request.setAttribute("elMap", elMap);
//=========集合======//
List userlist=new ArrayList();
for (int i=0; i<10; i++) {
User usr = new User();
usr.setUsername("USR_" + i);
usr.setAge(25+i);
userlist.add(usr);
}
request.setAttribute("userlist", userlist);

//=========对象数组=========//
User[] users = new User[10];
for (int i=0; i<10; i++) {
User u = new User();
u.setUsername("U_" + i);
users[i] = u;
}
request.setAttribute("users", users);
//=========字符串数组========//
String[] strArray = new String[]{"a", "b", "c"};
request.setAttribute("strArray", strArray);



*******Jsp页面获取值***********************

li>普通字符串,EL表达式的使用方法$和{},EL表达式的隐含对象pageScope/requestScope/sessionScope/applicationScope等等
如果为指定scope,它的搜索顺序是pageScope~applicationScope</li><br>

hello(el,scope=request): ${requestScope.hello}<br>
hello(el,scope=session): ${sessionscope.hello} <br>

<li>对象</li>使用"."来导航<br>
姓名 : ${user.username}<br>
年龄 : ${user.age}<br>
所属组:${user.group.name}<br>

<li>Map</li>使用"."来导航<br>
elMap.value1: ${elMap.key1}<br>
elMap.value2: ${elMap.key2}<br>

<li>集合</li>使用中括号[]加下标数字导航<br>
userlist[4].username: ${userlist[4].username}<br>
userlist[4].age: ${userlist[4].age}<br>

<li>对象数组</li>使用中括号[]加下标数字导航<br>
users[5].username:${users[5].username}
<li>字符串数组</li>使用中括号[]加下标数字导航<br>
strArray[0]:${strArray[0] }<br>
strArray[1]:${strArray[1] }<br>

<li>EL表达式对运算符的支持</li><br>
1+4:${1+4 }<br>
9-3:${9-2 }<Br>
2*3:${2*3 }<br>
9/2:${9/3 }<br>
9mod2:${9 mod 2 }<br>
4div1:${4div 1 }<br>

//===c:forEach循环输出Map的元素==//
<c:forEach items="${elMap}" var="m">
${m.key},${m.value }<br>
</c:forEach>

//====c:choose/c:when/c:otherwise============//
<table border="1">
<tr>
<td>姓名</td>
<td>年龄</td>
<td>所属组</td>
</tr>
<c:choose>
<c:when test="${(empty userlist)}">//判断userlist是否为空
<tr>
<td colspan="3"> 没有合适的数据</td>
</tr>
</c:when>
<c:otherwise>
//=====迭代集合userlist,从第2个开始,第8个结束,步长为2======//
<c:forEach items="${userlist}" var="usr" begin="2" end="8" step="2" varStatus="v">
//====两层嵌套,c:otherwise内部又好包含又c:when,c:otherwise===//
<c:choose>
<c:when test="${v.count % 2==0}">//===判断行数是否是偶数,如果是偶数,将背景色改为红色===//
<tr bgcolor="red">
</c:when>
<c:otherwise>
<tr>
</c:otherwise>
</c:choose>
<td>${usr.username}</td>
<td>${usr.age }</td>
<td>${usr.group.name }</td>
</tr>
</c:forEach>
</c:otherwise>
</c:choose>



//=====c:import,相当于jsp中的include包含某个页面====//
<c:import url="http://localhost:8080/login_struts"/>
//=====credirect:重定向=====//
<c:redirect context="/login_struts" url="/login.jsp"/>



  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值