-利用JSTL的核心标签库,须要在页面中通过taglib指令首先将标签库导入。(首先得将JSTLjar包导入)
<%@tagliburi=\"大众http://java.sun.com/jsp/jstl/core\"大众prefix=\公众c\公众%>
a、c:set标签:有三种用法
-用于进行变量定义,并将变量存放到指定域属性空间;用于为Bean的属性赋值;用于设置Map的key与value等。该标签在实际开拓中并不常用。
<br>-------------------c:set将变量存放到指定域中----------------<br>
<c:setvar=\"大众name\"大众value=\"大众张三\"大众scope=\公众session\公众/>
name=${pageScope.name}<br>
name=${sessionScope.name}<br>
<!--
输出结果为:
-------------------c:set将变量存放到指定域中----------------
name=
name=张三
->
-scope属性值默认是“pageContext”。
<br>-------------------c:set为Bean的属性赋值------------------<br>
<%
Studentstudent=newStudent();
pageContext.setAttribute(\"大众student\公众,student);
%>
<c:setvalue=\"大众李四\公众property=\"大众name\"大众target=\公众${pageScope.student}\公众></c:set>
<c:setvalue=\公众24\"大众property=\公众age\"大众target=\"大众${pageScope.student}\"大众></c:set>
student=${student}<br>
<!--
输出结果为:
-------------------c:set为Bean的属性赋值------------------
student=Student[name=李四,age=24]
-->
<br>----------------------c:set为Map赋值---------------------<br>
<%
Map<String,Object>map=newHashMap<String,Object>();
pageContext.setAttribute(\公众map\"大众,map);
%>
<c:setvalue=\公众即可\"大众property=\"大众name\"大众target=\"大众${pageScope.map}\公众></c:set>
<c:setvalue=\"大众20\"大众property=\公众age\"大众target=\"大众${pageScope.map}\"大众></c:set>
map=${map}<br>
name=${map.name}<br>
age=${map.age}<br>
<!--
输出结果为:
----------------------c:set为Map赋值---------------------
map={name=即可,age=20}
name=即可
age=20
-->
b、c:remove标签:从域属性空间中删除指定变量。该标签不常用。
<br>----------------------------c:remove删除指定域中的属性--------------------<br>
<c:setvar=\"大众school\"大众value=\公众pag_school\"大众/>
<c:setvar=\公众school\公众value=\"大众req_school\"大众scope=\"大众request\公众/>
<c:setvar=\"大众school\"大众value=\公众ses_school\"大众scope=\公众session\公众/>
<c:setvar=\"大众school\"大众value=\公众app_school\"大众scope=\公众application\公众/>
<c:removevar=\"大众school\"大众scope=\"大众session\"大众/>
school=${pageScope.school}<br>
school=${requestScope.school}<br>
school=${sessionScope.school}<br>
school=${applicationScope.school}<br>
<!--
输出结果为:
----------------------------c:remove删除指定域中的属性--------------------
school=pag_school
school=req_school
school=
school=app_school
-->
c、c:if标签:用于实现对付条件的判断
<br>--------------c:if--------------<br>
<c:setvar=\"大众user\"大众value=\公众admin\"大众/>
<c:iftest=\"大众${user=='admin'}\公众>
<ahref=\公众#\"大众>进入管理页面</a>
</c:if>
<!--
输出结果为:
--------------c:if--------------
进入管理页面
-->
-test:判断的条件。若为true,则实行标签体,否则不实行。
-var:存储test的判断结果。不常用。
-scope:存储test判断结果的变量的存放范围。不常用。
d、<c:choose>就像在Javaswitch语句,它可以让你在一些替代方案之间选择。
-<c:choose>标签没有任何属性。
-<c:when>标记有一个test属性(用于打算条件)。
-<c:otherwise>标签没有任何属性。
<br>----------------------c:choose------------------------<br>
<c:setvar=\公众pageno\公众value=\"大众2\公众/>
<c:setvar=\"大众totalPages\公众value=\"大众5\公众/>
<c:choose>
<c:whentest=\"大众${totalPages==1}\公众>
首页上一页下一页当前是${pageno}/${totalPages}页
</c:when>
<c:whentest=\公众${pageno==1}\"大众>
首页上一页<ahref=\公众#\公众>下一页</a><ahref=\"大众#\"大众>末页</a>当前是${pageno}/${totalPages}页
</c:when>
<c:otherwise>
<ahref=\"大众#\"大众>首页</a><ahref=\公众#\"大众>上一页</a><ahref=\公众#\"大众>下一页</a><ahref=\公众#\"大众>末页</a>当前是${pageno}/${totalPages}页
</c:otherwise>
</c:choose>
<!--
输出结果为:
----------------------c:choose------------------------
首页上一页下一页末页当前是2/5页
-->
e、c:forEach标签的基本用法:用于循环遍历数组、List、Set、Map凑集。在实际运用中利用非常频繁。
<br>--------------------遍历List---------------<br>
<%
List<String>names=newArrayList<String>();
names.add(\"大众张三\"大众);
names.add(\"大众李四\"大众);
names.add(\"大众王五\公众);
pageContext.setAttribute(\"大众names\"大众,names);
%>
<c:forEachitems=\"大众${names}\公众var=\"大众name\公众>
${name}<br>
</c:forEach>
<!--
输出结果为:
--------------------遍历List---------------
张三
李四
王五
-->
-begin:开始下标;end:结束下标;(包含结束下标)。
<br>--------------------遍历List---------------<br>
<%
List<String>names=newArrayList<String>();
names.add(\"大众郑二\"大众);
names.add(\公众张三\"大众);
names.add(\公众李四\"大众);
names.add(\"大众王五\"大众);
names.add(\公众赵六\公众);
names.add(\公众田七\"大众);
names.add(\公众刘八\"大众);
pageContext.setAttribute(\"大众names\"大众,names);
%>
<c:forEachitems=\"大众${names}\公众var=\"大众name\"大众begin=\"大众3\"大众end=\"大众5\"大众>
${name}<br>
</c:forEach>
<!--
输出结果为:
--------------------遍历List---------------
王五
赵六
田七
-->
-step:表示步长,各一个输出。
<br>--------------------遍历List---------------<br>
<%
List<String>names=newArrayList<String>();
names.add(\"大众郑二\公众);
names.add(\"大众张三\"大众);
names.add(\"大众李四\"大众);
names.add(\公众王五\公众);
names.add(\"大众赵六\"大众);
names.add(\公众田七\"大众);
names.add(\公众刘八\公众);
pageContext.setAttribute(\公众names\公众,names);
%>
<c:forEachitems=\公众${names}\公众var=\"大众name\"大众begin=\"大众0\公众end=\公众5\"大众step=\"大众2\"大众>
${name}<br>
</c:forEach>
<!--
输出结果为:
--------------------遍历List---------------
郑二
李四
赵六
-->
f、c:forEach标签的高等用法:
-varStatus:迭代变量的名称,用来表示迭代的状态,可以访问到迭代自身的信息。(vs.count表示序号;vs.index表示索引号(从0开始);vs.first:当迭代的时候是第一个时,显示为true,否则显示为false。)
<br>----------------------遍历List---------------------<br>
<%
List<Student>students=newArrayList<Student>();
students.add(newStudent(\"大众张三\"大众,23));
students.add(newStudent(\"大众李四\公众,24));
students.add(newStudent(\公众王五\"大众,25));
students.add(newStudent(\公众赵六\"大众,26));
students.add(newStudent(\"大众田七\公众,27));
pageContext.setAttribute(\"大众students\"大众,students);
%>
<tableborder=\"大众1\"大众>
<tr>
<th>序号</th>
<th>姓名</th>
<th>年事</th>
</tr>
<c:forEachitems=\"大众${students}\"大众var=\公众student\"大众varStatus=\"大众vs\"大众>
<tr>
<td>${vs.count}</td>
<td>${student.name}</td>
<td>${student.age}</td>
</tr>
</c:forEach>
</table>
<!--
输出结果为:
----------------------遍历List---------------------
序号姓名年事
1张三23
2李四24
3王五25
4赵六26
5田七27
-->
2、JSTL格式化标签库:利用JSTL的格式化标签库,须要在页面中通过taglib指令首先将标签库导入。
<%@tagliburi=\"大众prefix=\"大众fmt\"大众%>
a、fmt:formatDate标签:该标签用于利用不同的模式格式化日期。其常用属性有:
-value:将要被格式化的数据。
-pattern:格式化的模式。其与SimpleDateFormat的参数设置办法相同。
-var:格式化后的字符串所要存放的变量。若不指定var,则会将格式化过的结果直接显示在页面中。
-scope:变量存放的域属性空间,取值为page、request、session和application,默认为page范围。
-type:其取值为date、time或者是both,表示给出的value这天期、韶光,还是两者都包含,默认为date。
<%
Datenow=newDate();
pageContext.setAttribute(\公众now\公众,now);
%>
now=${now}<br>
<!--
输出结果为:
now=SunNov0514:00:26CST2017
-->
-示例:利用格式化日期标签:(显示“年-月-日”格式)
now=<fmt:formatDatevalue=\"大众${now}\"大众pattern=\"大众yyyy-MM-dd\"大众/><br>
<!--
输出结果为:
now=2017-11-05
-->
-再如将格式化后的日期字符串显示到表单中:
<fmt:formatDatevalue=\"大众${now}\"大众pattern=\"大众yyyy-MM-dd\"大众var=\公众birth\"大众/><br>
生日:<inputtype=\"大众text\"大众name=\公众birthday\"大众value=\"大众${birth}\公众/>
b、fmt:parseDate标签:该标签用于将指定字符串转换成日期类型。常用的属性有:
-value:将要被转换的数据。
-pattern:将要被转换的数据的模式。其与SimpleDateFormat的参数设置办法相同。
-var:转换后的日期类型数据所要存放的变量。若不指定var,则会将转换过的结果直接显示在页面中。
-scope:变量存放的域属性空间。取值为page、request、session、application,默认为page范围。
<br>---------------------------字符串转换成日期--------------<br>
<fmt:parseDatevalue=\"大众1949/10/01\"大众pattern=\"大众yyyy/MM/dd\"大众></fmt:parseDate><br>
<fmt:parseDatevalue=\"大众1949/10/01\"大众pattern=\"大众yyyy/MM/dd\"大众var=\"大众day\"大众></fmt:parseDate><br>
day=${day}
<!--
输出结果为:
---------------------------字符串转换成日期--------------
SatOct0100:00:00CST1949
day=SatOct0100:00:00CST1949
-->
c、fmt:formatNumber:该标签用于按照指定格式对数字进行格式化。常用的属性有:
-示例:
<br>--------------------------格式化数字--------------------<br>
<fmt:formatNumbervalue=\"大众${12345678}\"大众></fmt:formatNumber><br>
<fmt:formatNumbervalue=\"大众${12345678}\公众groupingUsed=\"大众false\公众></fmt:formatNumber><br>
<fmt:formatNumbervalue=\"大众${12345.678}\"大众maxIntegerDigits=\公众8\公众minIntegerDigits=\公众6\"大众></fmt:formatNumber><br>
<fmt:formatNumbervalue=\"大众${12345.674}\"大众maxFractionDigits=\"大众2\"大众></fmt:formatNumber>
<!--
输出结果为:
--------------------------格式化数字--------------------
12,345,678
12345678
012,345.678
12,345.67
-->
d、fmt:parseNumber标签:该标签用于将指定字符串转换成数值类型。常用的属性有:
-示例:
<br>-------------------字符串转换成数字-----------------<br>
<fmt:parseNumbervalue=\"大众12345.678\"大众integerOnly=\公众true\"大众></fmt:parseNumber><br>
<fmt:parseNumbervalue=\"大众12345.678\"大众integerOnly=\公众true\"大众var=\公众num\"大众></fmt:parseNumber>
num+1=${num+1}
<!--
输出结果为:
-------------------字符串转换成数字-----------------
12345
num+1=12346
-->
更多干系资讯可以关注西安富丽校区,免费得到java零根本教程!
额外附送excel教程