zoukankan      html  css  js  c++  java
  • 定义使用EL函数

    1. 首先需要定义一个处理的类.class
    2. 在标签库中定义一个描述文件,并将其保存在WEB-INF文件夹下面
      1. <uri>标记:用于指定tld文件的映射路径。在引用EL函数时,需要使用该标记指定内容。
      2. <name>标记:用于指定EL函数所对应的Java文件,这里需要包括包名和类名
      3. <function-class>标记:用于指定EL函数所对应的静态方法,这里包括返回值的类型和入口参数的类型。在指定这些类型时,需要使用完整的类型名。
      4. <function-signature>标记:用于指定EL函数所对应的静态方法,这里包括返回值的类型和入口参数的类型。在指定这些类型时,需要使用完整的类型名。
    3. 前台jsp页面的引用
    4. 实例:
                 编写java类
    1. package com.util;
    2. public class StringDeal {
    3. public static String shiftEnter(String string){
    4. String newString = string.replace(" ", "<br>");
    5. newString = newString.replace(" ", " ");
    6. return newString;
    7. }
    8. }
               编写标签库的描述文件,将其保存在web-inf文件夹下,使用new,新建tld文件。注意选择的version和jspversion,如图
    1. <?xml version="1.0" encoding="UTF-8"?>
    2. <taglib version="2.0" xmlns="http://java.sun.com/xml/ns/j2ee"
    3. xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
    4. xsi:schemaLocation="http://java.sun.com/xml/ns/j2ee web-jsptaglibrary_2_0.xsd">
    5. <tlib-version>1.0</tlib-version>
    6. <uri>/stringDeal</uri>
    7. <function>
    8. <!-- 调用的函数名称-->
    9. <name>shiftEnter</name>
    10. <!-- 调用的类java-->
    11. <function-class>com.util.StringDeal</function-class>
    12. <!-- 调用的函数的参数类型,和函数返回值类型-->
    13. <function-signature>java.lang.String shiftEnter(java.lang.String)</function-signature>
    14. </function>
    15. </taglib>
            之后在JSP页面中使用EL表达式,使用这个java文件的函数即可  
    1. <%@ page language="java" contentType="text/html; charset=UTF-8" pageEncoding="UTF-8"%>
    2. <!-- 注意下面这行,的uri使用的是tld中的url,而perfix是对象 -->
    3. <%@ taglib uri="/stringDeal" prefix="sd"%>
    4. <meta charset="utf-8">
    5. <html>
    6. <body>
    7. <%request.setCharacterEncoding("utf-8"); %>
    8. <!-- EL表达是中的函数使用,StringDeal中的shiftEnter函数 -->
    9. ${sd:shiftEnter(param.content) }
    10. </body>
    11. </html>





  • 相关阅读:
    Web.xml配置详解
    ANNOTATION 注解
    Gradle的使用
    Version Control
    Building Tool(Maven/Gradle)
    HTTP协议
    函数式编程
    injection
    Container
    Building Tool(Maven/Gradle)
  • 原文地址:https://www.cnblogs.com/sober-reflection/p/4095499.html
Copyright © 2011-2022 走看看