JSTL核心库中常用的的标记使用方法

1.<c:out value='${param.user}' escapeXml='true' default='guest' />

value便是要输出的值;

escapeXml默认属性为true,当c:out标记没有escapeXml时,等同于设置为true。如果你认为可能遇到一些需要显示而不只是呈现的XML实体时,可以将这个属性设置为true,这表示所有XML都将转换为web浏览器能呈现的形式,包括尖括号和所有XML内容。

default属性设置一个默认值,提供表达式计算为null时你希望打印的值。

2.<c:foreach var="movie" items="${movieList}" ><tr><td>${movie}</td></tr></c:foreach>

这个标记完全可以对应于for循环,对于集合中的每个元素,都可以执行一边标记的体。

标记将集合movieList中的每一个元素赋给你用var声明的这个变量movie。这个标记还有begin,end,step属性 。

3.<c:if test="${userType eq 'member'}">.......</c:if>

当测试结果为true时显示体内内容。

4.<c:choose>和<c:when>和<c:otherwise>

<c:choose>
    <c:when test="第一种结果">
        //执行第一种处理
    </c:when>
    <c:when test="第二种结果">
        //执行第二种处理
    </c:when>
    <c:when test="第三种结果">
        //执行第三种处理
    </c:when>
    <c:otherwise>
        //执行其他情况处理结果
    </c:otherwise>
</c:choose>

5.<c:remove var="userStatus" scope="request" />

使用这个标记来删除一个变量,var属性是一个String直接量,不能是表达式,scope是可选的,如果没有指定作用域,就会从所有作用域删除这个属性。

扫描二维码关注公众号,回复: 2681126 查看本文章

6.<c:set>

这个标记有两个不同的设置:var和target。

var版本用来设置属性变量,target版本用来设置bean性质或map值。这两个版本都有两种形式:有体或者没有体。

<c:set>设置属性变量var

没有体<c:set var="userLevel" scope="session" value="Cowboy" />

scope是可选的(如果没有指定,就会按顺序在页面作用域,请求作用域,会话,应用),var是必须的。必须指定一个值,不过既可以放入一个value属性,也可以把值放在标记体中。

如果没有一个名为userLevel的会话作用域,这个标记就会创建一个这样的属性。value值不必为String。

有体<c:set var="userLevel" scope="session" >

                sheriff,Bartender,Cowgirl

        </c:set>

对bean和map使用<c:set>

没有体<c:set target="${PetMap}" property="daoName" value="Clover" />

target的目标不能为null,如果目标是一个Map,则设置dogname键的相应值,如果目标是一个bean,就设置性质dogname的值。

有体<c:set target="${person}" property="name" >

         ${foo.name}

         </c:set>

target必须计算为一个对象,不能键入bean或map属性的id名

7.<c:import url="http://www.xxx.com/xxx/xxx.html"

这个标记将一个资源的内容增加到一个jsp中。动态的,在请求时将url属性值指定的内容增加到当前页面,它与<jsp:include>非常相似,但更加强大,也更灵活。

它的url可以来自web容器范围之外。

8.<c:url value='/inputComments.jsp' />

这会在value相对的url的最后增加jsessionid(如果禁用了cookie),在使用会话时用到。 

9.<c:catch var="myException">    <% int x = 10/0; %>   </c:catch>

这个标记类似于try/catch,捕获异常而不触发错误页面。一旦触发异常,就会跳至这个标记体的最后。

var="myException"会创建一个新的页面作用域属性,名为myException,并把异常对象赋给这个变量。

捕获到异常后可以输出异常的一些内容,如:${myException.message}

猜你喜欢

转载自blog.csdn.net/bestneymarjr/article/details/81457981
今日推荐