zoukankan      html  css  js  c++  java
  • 编写EL函数

    1.建立java类的静态函数

    package chapter4;
    
    public class ELFun {
    	public static String processStr(String s){
    		s = s.replaceAll("<", "&lt");
    		s = s.replaceAll(">", "&gt");
    		s = s.replaceAll(" ", " ");
    		return s;
    	}
    }
    

     在WEB-INF目录中建立一个tld目录,然后再目录中建立一个elfun.tld文件

    <?xml version="1.0" encoding="UTF-8" ?>
    <taglib xmlns="http://java.sun.com/xml/ns/javaee"
        xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
        xsi:schemaLocation="http://java.sun.com/xml/ns/javaee/web-jsptaglibrary_2_1.xsd"
        version="2.1">
        <tlib-version>1.0</tlib-version>
        <jsp-version>2.1</jsp-version>
        <description>用于转换特殊字符</description>
        <uri>myelfun</uri>  <!-- 定义URI -->
        <function>
            <name>ps</name>
            <function-class>chapter4.ELFun</function-class>
            <function-signature>
                java.lang.String processStr(java.lang.String)
            </function-signature>
        </function>
    </taglib>

    修改web.xml文件,添加如下代码

    <jsp-config>
          <taglib>
              <taglib-uri>/WEB-INF/tld/elfun.tld</taglib-uri>
              <taglib-location>/WEB-INF/tld/elfun.tld</taglib-location>
          </taglib>
      </jsp-config>

    建立一个elfun.jsp文件,需要在声明中导入tld文件

    <%@ page language="java" import="java.util.*" pageEncoding="UTF-8"%>
    <%@ taglib uri="/WEB-INF/tld/elfun.tld" prefix="elfun" %>
    
    <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
    <html>
      <head>
    
      </head>
      
    
      <body>
      <input type='text' name='text'/>
        ${elfun:ps("<input type='text' name='text'/>") }
      </body>
    </html>

     除了使用tld文件的路径引用tld文件外,还可以使用在tld文件中定义的url引用tld文件

    例如:<%@ taglib uri="elfun" prefix="elfun" %>

    但为了避免冲突,url在外发布时最好带上域名,例如http://www.sun.com/myelfun

    如果使用路径引用tld文件,tld文件可以放到web工程中的任何目录下,并且无需重新服务器即可生效。

    如果使用url来引用tld文件,tld文件必须放到web-inf目录中或web-inf目录的子文件中,包括lib和classes目录,且必须重新服务器或重新发布web工程。

  • 相关阅读:
    ES6/ES2015核心内容 import export
    JavaScript 标准参考教程(alpha) 阮一峰
    NPM 学习笔记整理
    (尚026)Vue_案例_动态初始化显示(尚025)
    (尚025)Vue_案例_静态组件
    (尚024)Vue_案例_交互删除
    (尚023)Vue_案例_交互添加
    (尚022)Vue案例_初始化显示(十分详细!!!)
    (尚021)Vue_eslint编码规范检查
    (尚020)Vue打包发布项目
  • 原文地址:https://www.cnblogs.com/tuifeideyouran/p/4366687.html
Copyright © 2011-2022 走看看