您的位置 首页 > 数码极客

‘idea如何应用jsp中的taglib’idea编写jsp!

1、JSTL核心标签库:

-使用JSTL的核心标签库,需要在页面中通过taglib指令首先将标签库导入。(首先得将JSTLjar包导入)

<%@tagliburi=";prefix="c"%>

a、c:set标签:有三种用法

-用于进行变量定义,并将变量存放到指定域属性空间;用于为Bean的属性赋值;用于设置Map的key与value等。该标签在实际开发中并不常用。

<br>-------------------c:set将变量存放到指定域中----------------<br>

<c:setvar="name"value="张三"scope="session"/>

name=${}<br>

name=${}<br>

<!--

输出结果为:

-------------------c:set将变量存放到指定域中----------------

name=

name=张三

->

-scope属性值默认是“pageContext”。

<br>-------------------c:set为Bean的属性赋值------------------<br>

<%

Studentstudent=newStudent();

("student",student);

%>

<c:setvalue="李四"property="name"target="${}"></c:set>

<c:setvalue="24"property="age"target="${}"></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>();

("map",map);

%>

<c:setvalue="即可"property="name"target="${}"></c:set>

<c:setvalue="20"property="age"target="${}"></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=${}<br>

school=${reque}<br>

school=${}<br>

school=${a}<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("王五");

("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("刘八");

("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("刘八");

("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>();

(newStudent("张三",23));

(newStudent("李四",24));

(newStudent("王五",25));

(newStudent("赵六",26));

(newStudent("田七",27));

("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>${}</td>

<td>${}</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();

("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教程

责任编辑: 鲁达

1.内容基于多重复合算法人工智能语言模型创作,旨在以深度学习研究为目的传播信息知识,内容观点与本网站无关,反馈举报请
2.仅供读者参考,本网站未对该内容进行证实,对其原创性、真实性、完整性、及时性不作任何保证;
3.本站属于非营利性站点无毒无广告,请读者放心使用!

“idea如何应用jsp中的taglib,idea编写jsp,idea如何创建jsp,如何用idea写jsp”边界阅读