JSTL_标签库详解大全JSTL常用标签汇总java开发jsp开发

整理文档很辛苦,赏杯茶钱您下走!

免费阅读已结束,点击下载阅读编辑剩下 ...

阅读已结束,您可以下载文档离线阅读编辑

资源描述

一、JSTL标签库详解二、JSTL常用标签汇总JSTL的核心标签库主要包括:表达式操作、流程控制、迭代操作和URL操作。以下是JSTL常用标签的用法总结:一、表达式操作1.c:out作用:用于显示数据的内容。语法1:没有本体内容c:outvalue=value[escapeXml={true|false}][default=defaultValue]/语法2:有本体内容c:outvalue=value[escapeXml={true|false}]defaultvalue/c:out属性说明:value:需要显示出来的值。default:如果value的值为null时,则显示default指定的值。escapeXml:是否转换特殊字符,默认为true。即默认会将、、’、”和&转换为<、>、'、"和&。如果设为false,则不进行转换。2.c:set作用:用于将变量的值存储在JSP范围中或JavaBean的属性中。语法1:将value的值存储在范围为scope的varName变量中c:setvalue=valuevar=varName[scope={page|request|session|application}]/语法2:将本体内容的数据存储在范围为scope的varName变量中c:setvar=varName[scope={page|request|session|application}]...本体内容/c:set语法3:将value的值存储在target对象的propertyName属性中c:setvalue=valuetarget=targetproperty=propertyName/语法4:将本体内容的数据存储在target对象的propertyName属性中c:settarget=targetproperty=propertyName...本体内容/c:set属性说明:value:要被存储的值。var:欲存入的变量名称。scope:var变量的JSP范围。默认为page范围。target:为一JavaBean或Map对象。property:指定的target对象的属性。3.c:remove作用:移除变量。语法:c:removevar=varName[scope={page|request|session|application}]/属性说明:var:要移除的变量。scope:var变量所在的JSP范围,默认为page范围。4.c:catch作用:用于处理产生错误的异常情况,并将错误信息存储起来。语法:c:catch[var=varName]...欲抓取错误的部分/c:catch属性说明:var:将错误信息存储在指定的变量中,可以通过该变量获取错误信息。二、流程控制1.c:if作用:类似if判断语句,用于表达式判断。语法1:没有本体内容c:iftest=testConditionvar=varName[scope={page|request|session|application}]/语法2:有本体内容c:iftest=testCondition[var=varName][scope={page|request|session|application}]/...本体内容/c:if属性说明:test:当该属性中的表达式运算结果为true,则会执行本体内容,为false则不执行,该标签必须要有test属性。var:存储test的运算结果,为true或false。scope:var变量的JSP范围。2.c:choose、c:when、c:otherwise作用:这三个标签必须组合使用,用于流程控制。范例:c:choosec:whentest=${condition1}condition1为true/c:whenc:whentest=${condition2}condition2为true/c:whenc:otherwisecondition1和condition2都为false/c:otherwise/c:choose范例说明:当condition1为true时,会显示“condition1为true”;当condition1为false且condition2为true时,会显示“condition2为true”,如果两者都为false,则会显示“condition1和condition2都为false”。注意:若condition1和condition2的运算结果都为true时,此时只会显示condition1为true。限制说明:a.c:when和c:otherwise标签必须在c:choose和/c:choose之间使用。b.在同一个c:choose中,c:otherwise必须是最后一个标签,且只能有一个c:otherwise标签。c:when可以有多个。c.在同一个c:choose中,当所有c:when的test都为false时,才执行c:otherwise的本体内容。三、迭代操作1.c:forEach作用:为循环控制,它可以将集合(Collection)中的成员循序浏览一遍。运作方式为当条件符合时,就会持续重复执行c:forEach的本体内容。语法1:迭代一个集合对象中的所有成员c:forEachitems=collection[var=varName][varStatus=varStatusName][begin=begin][end=end][step=step]/...本体内容/c:forEach语法2:迭代指定次数c:forEach[var=varName][varStatus=varStatusName]begin=beginend=end[step=step]...本体内容/c:forEach属性说明:items:被迭代的集合对象。var:存放当前指到的集合对象中的成员。varStatus:存放当前指到的成员的相关信息。(index:当前指到的成员的索引;count:当前总共指到成员的总数;first:当前指到的成员是否为第一个成员;last:当前指到的成员是否为最后一个成员)。begin:迭代开始的位置,默认为0。end:迭代结束的位置,默认为最后。step:每次迭代的间隔数,默认为1。范例:%intatts[]={1,2,3,4,5,6,7,8,9,10};request.setAttribute(atts,atts);%c:forEachitems=${atts}var=itembegin=0end=9step=1${item}/br/c:forEach此标签也可以用于普通的循环控制,与for循环一样。如:c:forEachbegin=1end=10var=item${item}/br/c:forEach2.c:forTokens作用:用指定分隔符分隔一字符串,并迭代分隔后的数组。语法:c:forTokensitems=stringOfTokensdelims=delimiters[var=varName][varStatus=varStatusName][begin=begin][end=end][step=step]本体内容/c:forTokens属性说明:items:被分隔并迭代的字符串。delims:用来分隔字符串的字符。var:存放当前指到的成员。varStatus:存放当前指到的成员的相关信息。(index:当前指到的成员的索引;count:当前总共指到成员的总数;first:当前指到的成员是否为第一个成员;last:当前指到的成员是否为最后一个成员)。begin:迭代开始的位置,默认为0。end:迭代结束的位置,默认为最后。step:每次迭代的间隔数,默认为1。范例1:c:forTokensitems=A,B,C,D,Edelims=,var=item${item}/c:forTokens用“,”号分隔字符串,并迭代输出分隔后的字符串数组,输出结果为“ABCDE”。范例2:c:forTokensitems=A,B;C-D,Edelims=,;-var=item${item}/c:forTokensdelims中指定了三个分隔符“,”、“;”和“-”,可见我们一次可以设定所有想当做分隔字符串用的字符。输出结果依然为“ABCDE”。四、URL操作1.c:import作用:将其他静态或动态文件包含到本身JSP网页中。不但可以包含同一个webapplication下的文件,还可以包含其他webapplication或其他网站的文件。语法:c:importurl=url[var=varName][scope={page|request|session|application}][c:paramname=paramNamevalue=paramValue/]/c:import属性说明:url:要包含至本身JSP网页的其他文件的URL。必选var:将包含进来的其他文件以字符串的形式存放到指定的变量中。可选scope:var变量的作用范围。可选c:param:可选子标签,用于向包含进来的其他网页文件传递参数。范例:c:importurl==testvalue=1234//c:import说明:当c:import标签中未指定var变量时,会直接将包含进来的其他网页文件内容显示出来,如果指定了var变量,则会将内容存放到var变量中,不显示。2.c:url作用:生成一个URL。语法:c:urlvalue=url[context=expression][var=name][scope=scope][c:paramname=expressionvalue=expression/]/c:url范例1:ahref=c:urlvalue=index.jsp'/indexpage/a在a超链接标签中生成一个URL,指向index.jsp。范例2:c:urlvalue=index.jspc:paramname=keywordvalue=${searchTerm}/c:paramname=monthvalue=02/2003//c:url生成一个URL,并传递参数,生成的结果为index.jsp?keyword=*&month=02/2003,*代表传递的searchTerm的值。3.c:redirect作用:可以将客户端的请求从一个JSP网页导向到其他文件。语法:c:redirecturl=url[paramname=paramNamevalue=paramValue]/c:redirect将请求导向URl指向的其他文件。catchc:catch动作用于捕获JSP元素在其体中抛出的异常。示范代码:c:catchvar=err${param.sampleSingleValue[9]==3}/c:catch${err}更多catch信息choose用于控制嵌套c:when和c:otherwise动作的处理。示范代码:c:choosec:whentest=${product.onSale}.../c:whenc:otherwise..../c:otherwise/c:choose更多choose信息forEachc:forEach动作将其体反复计算固定次数,或者针对一个集合中的每个元素分别计算一次体。示范代码:c:forEachitems=${map}var=mymapc:outvalue=${myma

1 / 20
下载文档,编辑使用

©2015-2020 m.777doc.com 三七文档.

备案号:鲁ICP备2024069028号-1 客服联系 QQ:2149211541

×
保存成功