[关闭]
@Ablechen 2019-07-12T02:28:18.000000Z 字数 4706 阅读 413

JSPL(EL的扩展)


set标签

使用set标签的时候,设置的变量设置到page, request, session, application中

  1. <c:set var=变量名 value= scope=变量的作用范围 />
  2. <c:set var=变量名 scope=变量的作用范围>
  3. 标签体(填写变量的值)
  4. </c:set>
  5. <c:set target="目标对象" property="属性名" value="属性值" />
  6. <c:set target="目标对象" property="属性名">
  7. 标签体(填写属性值)
  8. </c:set>

目标对象可以是javaBean也可以是map集合
对于获取javaBean对象,可以使用EL表达式

  1. <jsp:useBean id="实例名" class="pecage.class" scopr=作用域 />
  2. <c:set target="${实例名}" property="属性名" value=属性值 />
  3. 属性名 = ${ 实例名.属性名 }

remove标签

  1. <c:remove var="变量名" scopr="作用范围" />

流程控制标签

流程控制标签c:ifc:chosec:whenc:otherwise
  1. <c:if test="判断条件" var="变量名" scope="作用范围">
  2. 标签体
  3. </c:if>

var中存放的是判断的结果, 是一个boolean类型的值, scope是这个变量的作用范围,标签体是这个判断条件为真的时候,执行的内容
类似于switch-case的标签

  1. <c:choose>
  2. <c:when test="判断条件">标签体</c:when>
  3. <c:when test="判断条件">标签体</c:when>
  4. <c:when test="判断条件">标签体</c:when>
  5. <c:when test="判断条件">标签体</c:when>
  6. <c:otherwise>标签体</c:otherwise>
  7. </c:choose>

循环标签

循环控制标签forEachforTokens

特别需要注意的是,items中的是"对象", 因此必须使用EL表达式,或者嵌入的java
forEach用于操作的对象多为集合和数组, 而forTokens用于操作的对象只能为字符串

  1. <c:forEach items="操作对象" var="变量名" begin="开始位置" end="结束位置" step="步长">
  2. 标签体
  3. </c:forEach>
  1. <c:forTokens items="字符串对象" var="变量名" delims="分隔符(可以有多个)" begin="" end="" step="">
  2. 标签体
  3. </c:forTokens>

URL标签

URL标签import标签param标签url标签redirect标签不带参数的超链接带参数的超链接不带参数跳转带参数跳转
  1. <c:import url="文件路径" var="fileName" scope="作用范围" charEncoding="编码格式">
  2. 标签体
  3. </c:import>

其中被导入的文件存放到了变量fileName中,使用的直接引用变量就可以了

  1. <c:param name="参数名" value="参数值" />

主要用于不同页面之间传递参数,需要注意的是,这里传递的参数是param,不能使用EL标签来获得值,只能通过jsp的内置对象来获取

  1. <c:url url="链接地址" var="name" scope="作用范围">
  2. <c:param var="name" value="参数值" />用于在网页之间传递参数作为request.paramter
  3. </c:url>

主要用作形成超链接的字符串

  1. <c:redirect url="地址" />不带参数跳转
  2. <c:redirect url="地址">
  3. <c:param var="name" value="参数值" />
  4. </c:redirect>

创建自己的标签库

Created with Raphaël 2.1.2创建标签库创建实现标签作用类在WEB_INF中创建tag的表述文件defined.tld调用完成

创建标签的作用类的时候,直接继承SimpleTagSupport,然后重写doTag()方法即可

添加新批注
在作者公开此批注前,只有你和作者可见。
回复批注