美文网首页
JSP自定义标签_EL表达式_JSTL标签

JSP自定义标签_EL表达式_JSTL标签

作者: bboymonk | 来源:发表于2017-05-08 14:03 被阅读0次

1,创建一个tld文件

<?xml version="1.0" encoding="UTF-8" ?>
<taglib xmlns="http://java.sun.com/xml/ns/j2ee"
        xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
        xsi:schemaLocation="http://java.sun.com/xml/ns/j2ee http://java.sun.com/xml/ns/j2ee/web-jsptaglibrary_2_0.xsd"
        version="2.0">
    <description>A tag library exercising SimpleTag handlers.</description>
    <tlib-version>1.0</tlib-version>
    <short-name>SimpleTagLibrary</short-name>
    <uri>/wjb-tag</uri>

    <tag>
        <name>loginDate</name>
        <tag-class>loginTag</tag-class>
        <body-content>empty</body-content>
    </tag>
</taglib>

2,创建一个标签处理类

import javax.servlet.jsp.JspException;
import javax.servlet.jsp.tagext.TagSupport;
import java.io.IOException;
import java.text.SimpleDateFormat;
import java.util.Date;

/**
 * Created by wjb on 2017/5/8.
 * 自定义标签处理类
 */
public class loginTag extends TagSupport{

    @Override
    public int doStartTag() throws JspException {
        SimpleDateFormat format = new SimpleDateFormat("yyyy-MM-dd");
        String dataStr = format.format(new Date());
        try {
            pageContext.getOut().print(dataStr);
        } catch (IOException e) {
            e.printStackTrace();
        }
        return super.doStartTag();
    }
}

3,使用自定义标签

<%@ page contentType="text/html;charset=UTF-8" language="java" %>
<%@ taglib prefix="wjb" uri="/wjb-tag" %>
<html>
  <head>
    <title>$Title$</title>
  </head>
  <body>
  welcome to my world:<wjb:loginDate/>
  </body>
</html>
一直报错,原因未找到。
web.xml里配置还是报错。
<?xml version="1.0" encoding="UTF-8"?>
<web-app xmlns="http://xmlns.jcp.org/xml/ns/javaee"
         xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
         xsi:schemaLocation="http://xmlns.jcp.org/xml/ns/javaee http://xmlns.jcp.org/xml/ns/javaee/web-app_3_1.xsd"
         version="3.1">
    <jsp-config>
        <taglib>
            <taglib-uri>/wjb-tag</taglib-uri>
            <taglib-location>/WEB-INF/login.tld</taglib-location>
        </taglib>
    </jsp-config>
</web-app>

JSTL标签的使用

先导入jar包,jstl.jar和standard.jar



使用标签前要先导入



<c:out value="this is my jstl"/>
EL表达式用法:

上面两个表达式结果是一样,但也有下面的特殊情况:





set标签:

jstl函数:

是否包含某字符串,返回true,false

<c:out value="${fn:contains('你好,hello world','wjb')}"></c:out>
<c:out value="${fn:containsIgnoreCase('你好,Hello world','hello')}"></c:out>

catch标签:

if标签:

<c:if test="${param.count > 20}" var="result">
    <c:out value="输入的值是:${param.count}"/>
</c:if>
<c:out value="${result}"/>

choose,when,otherwise标签:

<form action="#">
    个数:<input type="text" name="count">
    commit:<input type="submit">
  </form>
  <c:choose>
    <c:when test="${param.count >= 60 && param.count < 80}">
      <c:out value="成绩合格"/>
    </c:when>
    <c:when test="${param.count >= 80 && param.count <= 100}">
      <c:out value="成绩优秀"/>
    </c:when>
    <c:otherwise>
      <c:out value="输入有问题"/>
    </c:otherwise> 
  </c:choose>

forEach标签:


<c:forEach var="wjb" items="${list}" varStatus="status">
  <c:out value="${wjb}"/>====
  <c:out value="index属性值:${status.index}"/>
  ===<c:out value="是否是第一个值:${status.first}"/><br/>
</c:forEach>

forTokens标签:

类似于String的split方法。

<c:forTokens items="159-0581-3552-654651-165651-651" delims="-" var="num">
    <c:out value="${num}"/><br/>
</c:forTokens>

import标签:

<c:import url="http://www.baidu.com" charEncoding="UTF-8"/>

redirect标签:

<c:param/>标签可以传参数

<c:redirect url="/index.jsp">
    <c:param name="username">wjb</c:param>
    <c:param name="password">123</c:param>
</c:redirect>

相关文章

  • EL表达式与JSP标签(学习笔记)

      本文内容主要介绍EL表达式、JSP标准标签库(JSTL)、JSP自定义标签库。其中拿EL表达式和JSP技术做对...

  • Jsp

    JSP脚本和运行原理 JSP指令 JSP内置/隐式对象 JSP 标签 EL表达式和JSTL标签库使用

  • 19. JSP标签, JSTL标签, EL表达式

    EL表达式 获取数据 执行运算 获取web开发的常用对象 jsp标签 JSTL标签 JSTL标签库的使用就是为了弥...

  • JSP5 - JSTL标签库

    JSPL JSP标准标签库 作用: 和 EL 表达式一起,取代<% %>java代码 JSTL标签库 核心标签库(...

  • Job-day13 jstl、el、自定义EL函数、自定义标签、

    1、JSTL标签库概述 JSP标准标签库。* 作用:和EL表达式一起 取代<% %>* 版本:1.0 ...

  • JavaEE-JSP基础-EL表达式和JSTL标签库(Tagli

    EL表达式和JSTL标签库: 在JSP页面代替java代码,便于编写 一.EL表达式 1.EL内置对象 2.EL语...

  • jsp

    jsp介绍 jsp语法 jsp指令 EL表达式 自定义标签 jsp指令 - page jsp指令 - includ...

  • JSP

    JSP:指令注释内置对象 MVC开发模式 EL表达式 JSTL标签 三层架构 JSP 指令y作用:用于配置JSP页...

  • jstl标签库

    一、jstl标签库 jstl是apache对EL表达式的扩展(也就是说JSTL依赖EL),JSTL是标签语言。js...

  • jstl与standard有什么作用?

    JSP标准标签库(JSTL)是一个JSP标签集合。 在jsp中,我们使用jstl表达式时需要使用到jstl.jar...

网友评论

      本文标题:JSP自定义标签_EL表达式_JSTL标签

      本文链接:https://www.haomeiwen.com/subject/vgvmtxtx.html