javascript
JSP、EL和JSTL-学习笔记04【JSTL常用标签】
- Java后端 學(xué)習(xí)路線 筆記匯總表【黑馬程序員】
目錄
第5節(jié) JSTL常用標(biāo)簽
JSTL_概述
JSTL_常用標(biāo)簽_if
JSTL_常用標(biāo)簽_choose
JSTL_常用標(biāo)簽_foreach
1、foreach普通遍歷
2、foreach遍歷容器
JSTL_練習(xí)
User.java
jstl_test.jsp
第5節(jié) JSTL常用標(biāo)簽
JSTL_概述
JSTL
1. 概念:JavaServer Pages Tag Library ?JSP標(biāo)準(zhǔn)標(biāo)簽庫(kù)
?? ?* 是由Apache組織提供的開(kāi)源的免費(fèi)的jsp標(biāo)簽?? ??? ?<標(biāo)簽>
2. 作用:用于簡(jiǎn)化和替換jsp頁(yè)面上的java代碼?? ??? ?
3. 使用步驟:
?? ?1. 導(dǎo)入jstl相關(guān)jar包
?? ?2. 引入標(biāo)簽庫(kù):taglib指令: ?<%@ taglib %>
?? ?3. 使用標(biāo)簽
JSTL_常用標(biāo)簽_if
JSTL
1. 概念:JavaServer Pages Tag Library,JSP標(biāo)準(zhǔn)標(biāo)簽庫(kù)
?? ?* 是由Apache組織提供的開(kāi)源的免費(fèi)的jsp標(biāo)簽。(<標(biāo)簽>)
2. 作用:用于簡(jiǎn)化和替換jsp頁(yè)面上的java代碼。
3. 使用步驟:
?? ?1. 導(dǎo)入jstl相關(guān)jar包
?? ?2. 引入標(biāo)簽庫(kù):taglib指令: ?<%@ taglib %>
?? ?3. 使用標(biāo)簽
4. 常用的JSTL標(biāo)簽
?? ?1. if:相當(dāng)于java代碼的if語(yǔ)句。
?? ??? ?1. 屬性:
? ? ? ? ? ? * test 必須屬性,接受boolean表達(dá)式
? ? ? ? ? ? ? ? * 如果表達(dá)式為true,則顯示if標(biāo)簽體內(nèi)容,如果為false,則不顯示標(biāo)簽體內(nèi)容
? ? ? ? ? ? ? ? * 一般情況下,test屬性值會(huì)結(jié)合el表達(dá)式一起使用
? ??? ??? ? 2. 注意:
? ? ? ??? ??? ? * c:if標(biāo)簽沒(méi)有else情況,想要else情況,則可以在定義一個(gè)c:if標(biāo)簽
?? ?2. choose:相當(dāng)于java代碼的switch語(yǔ)句。
?? ?3. foreach:相當(dāng)于java代碼的for語(yǔ)句。
JSTL_常用標(biāo)簽_choose
JSTL
1. 概念:JavaServer Pages Tag Library,JSP標(biāo)準(zhǔn)標(biāo)簽庫(kù)
?? ?* 是由Apache組織提供的開(kāi)源的免費(fèi)的jsp標(biāo)簽。(<標(biāo)簽>)
2. 作用:用于簡(jiǎn)化和替換jsp頁(yè)面上的java代碼。
3. 使用步驟:
?? ?1. 導(dǎo)入jstl相關(guān)jar包
?? ?2. 引入標(biāo)簽庫(kù):taglib指令: ?<%@ taglib %>
?? ?3. 使用標(biāo)簽
4. 常用的JSTL標(biāo)簽
?? ?1. if:相當(dāng)于java代碼的if語(yǔ)句。
?? ??? ?1. 屬性:
? ? ? ? ? ? * test 必須屬性,接受boolean表達(dá)式
? ? ? ? ? ? ? ? * 如果表達(dá)式為true,則顯示if標(biāo)簽體內(nèi)容,如果為false,則不顯示標(biāo)簽體內(nèi)容
? ? ? ? ? ? ? ? * 一般情況下,test屬性值會(huì)結(jié)合el表達(dá)式一起使用
? ??? ??? ? 2. 注意:
? ? ? ??? ??? ? * c:if標(biāo)簽沒(méi)有else情況,想要else情況,則可以在定義一個(gè)c:if標(biāo)簽
?? ?2. choose:相當(dāng)于java代碼的switch語(yǔ)句。
?? ??? ?1. 使用choose標(biāo)簽聲明? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ?相當(dāng)于switch聲明
? ? ? ? 2. 使用when標(biāo)簽做判斷? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ?相當(dāng)于case
? ? ? ? 3. 使用otherwise標(biāo)簽做其他情況的聲明 ? ??? ?相當(dāng)于default
?? ?3. foreach:相當(dāng)于java代碼的for語(yǔ)句。
JSTL_常用標(biāo)簽_foreach
foreach:相當(dāng)于java代碼的for語(yǔ)句。
? ? 1. 完成重復(fù)的操作
? ? ? ? for(int i = 0; i < 10; i ++){
? ? ? ? }
? ? ? ? * 屬性:
? ? ? ? ? ? begin:開(kāi)始值
? ? ? ? ? ? end:結(jié)束值
? ? ? ? ? ? var:臨時(shí)變量
? ? ? ? ? ? step:步長(zhǎng)
? ? ? ? ? ? varStatus:循環(huán)狀態(tài)對(duì)象
? ? ? ? ? ? ? ? index:容器中元素的索引,從0開(kāi)始
? ? ? ? ? ? ? ? count:循環(huán)次數(shù),從1開(kāi)始
? ? 2. 遍歷容器
? ? ? ? List<User> list;
? ? ? ? for(User user : list){
? ? ? ? }
? ? ? ? * 屬性:
? ? ? ? ? ? items:容器對(duì)象
? ? ? ? ? ? var:容器中元素的臨時(shí)變量
? ? ? ? ? ? varStatus:循環(huán)狀態(tài)對(duì)象
? ? ? ? ? ? ? ? index:容器中元素的索引,從0開(kāi)始
? ? ? ? ? ? ? ? count:循環(huán)次數(shù),從1開(kāi)始
1、foreach普通遍歷
2、foreach遍歷容器
JSTL_練習(xí)
JSTL
1. 概念:JavaServer Pages Tag Library,JSP標(biāo)準(zhǔn)標(biāo)簽庫(kù)
?? ?* 是由Apache組織提供的開(kāi)源的免費(fèi)的jsp標(biāo)簽。(<標(biāo)簽>)
2. 作用:用于簡(jiǎn)化和替換jsp頁(yè)面上的java代碼。
3. 使用步驟:
?? ?1. 導(dǎo)入jstl相關(guān)jar包
?? ?2. 引入標(biāo)簽庫(kù):taglib指令: ?<%@ taglib %>
?? ?3. 使用標(biāo)簽
4. 常用的JSTL標(biāo)簽
?? ?1. if:相當(dāng)于java代碼的if語(yǔ)句。
?? ??? ?1. 屬性:
? ? ? ? ? ? * test 必須屬性,接受boolean表達(dá)式
? ? ? ? ? ? ? ? * 如果表達(dá)式為true,則顯示if標(biāo)簽體內(nèi)容,如果為false,則不顯示標(biāo)簽體內(nèi)容
? ? ? ? ? ? ? ? * 一般情況下,test屬性值會(huì)結(jié)合el表達(dá)式一起使用
? ??? ??? ? 2. 注意:
? ? ? ??? ??? ? * c:if標(biāo)簽沒(méi)有else情況,想要else情況,則可以在定義一個(gè)c:if標(biāo)簽
?? ?2. choose:相當(dāng)于java代碼的switch語(yǔ)句。
?? ??? ?1. 使用choose標(biāo)簽聲明 ? ? ? ? ?? ??? ??? ?相當(dāng)于switch聲明
? ? ? ? 2. 使用when標(biāo)簽做判斷 ? ? ? ? ?? ??? ??? ?相當(dāng)于case
? ? ? ? 3. 使用otherwise標(biāo)簽做其他情況的聲明 ? ??? ?相當(dāng)于default
?? ?3. foreach:相當(dāng)于java代碼的for語(yǔ)句。
?? ??? ?
5. 練習(xí):
?? ?* 需求:在request域中有一個(gè)存有User對(duì)象的List集合。需要使用jstl+el,將list集合數(shù)據(jù)展示到j(luò)sp頁(yè)面的表格table中。
User.java
package cn.itcast.domain;import java.text.SimpleDateFormat; import java.util.Date;public class User {private String name;private int age;private Date birthday;public User(String name, int age, Date birthday) {this.name = name;this.age = age;this.birthday = birthday;}public User() {}/*** 邏輯視圖** @return*/public String getBirStr() {if (birthday != null) {//1.格式化日期對(duì)象SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");//2.返回字符串即可return sdf.format(birthday);} else {return "";}}public String getName() {return name;}public void setName(String name) {this.name = name;}public int getAge() {return age;}public void setAge(int age) {this.age = age;}public Date getBirthday() {return birthday;}public void setBirthday(Date birthday) {this.birthday = birthday;} }jstl_test.jsp
<%@ page import="cn.itcast.domain.User" %> <%@ page import="java.util.List" %> <%@ page import="java.util.ArrayList" %> <%@ page import="java.util.Date" %> <%@ page contentType="text/html;charset=UTF-8" language="java" %> <%@taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core" %> <html> <head><title>test</title> </head> <body><%List list = new ArrayList();list.add(new User("張三", 23, new Date()));list.add(new User("李四", 24, new Date()));list.add(new User("王五", 25, new Date()));request.setAttribute("list", list);%><table border="1" width="500" align="center"><tr><th>編號(hào)</th><th>姓名</th><th>年齡</th><th>生日</th></tr><%--數(shù)據(jù)行--%><c:forEach items="${list}" var="user" varStatus="s"><c:if test="${s.count % 2 != 0}"><tr bgcolor="red"><td>${s.count}</td><td>${user.name}</td><td>${user.age}</td><td>${user.birStr}</td></tr></c:if><c:if test="${s.count % 2 == 0}"><tr bgcolor="green"><td>${s.count}</td><td>${user.name}</td><td>${user.age}</td><td>${user.birStr}</td></tr></c:if></c:forEach></table> </body> </html>加油~
總結(jié)
以上是生活随笔為你收集整理的JSP、EL和JSTL-学习笔记04【JSTL常用标签】的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問(wèn)題。
- 上一篇: JSP、EL和JSTL-学习笔记03【E
- 下一篇: 要想保研成功!寒假就干这几件事~