美文网首页
JAVA Web学习(17)___11.6 定义和使用EL函数

JAVA Web学习(17)___11.6 定义和使用EL函数

作者: 岁月静好浅笑安然 | 来源:发表于2019-09-14 18:19 被阅读0次

    11.6 定义和使用EL函数

    11.6.1 定义和使用函数

    • 1.编写一个Java类,并在该类中编写公用的静态方法,用于实现自定义EL函数的功能。
    • 2.编写标签库描述文件,对函数进行声明。该文件的扩展名为.tld,被保存到web应用的WEB-INF文件夹下。
    • 3.在JSP页面中引用标签库,并调用定义的EL函数,并调用定义的EL函数,实现相应的功能。
      示例代码
    • 1.编写 StringDeal.java
    public class StringDeal {
        public static String shiftEnter(String  str){
            String newStr=str.replace("\r\n", "<br>");//替换回车换行符
            newStr=newStr.replaceAll("","&nbsp;");    //替换空格符号
            return newStr;
        }
    
    }
    
    • 2.编写stringDeal.tld文件,保存到WEB-INF文件夹下
    <?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 web-jsptaglibrary_2_0.xsd"  
        version="2.0"> 
     <tlib-version>1.0</tlib-version>
     <jsp-version>1.2</jsp-version>
     <uri>/stringDeal</uri>
     <function>
     <name>shiftEnter</name>
     <function-class>com.hwp.StringDeal</function-class>
     <function-signature>java.lang.String  shiftEnter(java.lang.String)</function-signature>
     </function>
    </taglib>
    
    

    参数说明
    <uri>/stringDeal</uri>用于指定tld文件的映射路径
    <name>shiftEnter</name>用于指定EL函数所对应的方法名,通常与java文件名字一样
    <function-class>com.hwp.StringDeal</function-class> 包名+类名 -
    <function-signature>java.lang.String shiftEnter(java.lang.String)</function-signature> 用于指定EL函数所对应的静态方法,包含返回值类型和入口参数类型

    • 3.编写index.jsp文件
    <%@ page language="java" import="java.util.*" pageEncoding="UTF-8"%>
    
    
    <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
    <html>
      <head>
        
        
        <title>EL表达式</title>
        
      </head>
      
      <body>
       
         <form action="deal.jsp" name="form1" method="post">
         <textarea rows="5" cols="30" name="content"></textarea>
         <br>
         <input type="submit" name="Button" value="提交">
         </form>
      </body>
    </html>
    
    
    • 4.编写deal.jsp文件
    <%@ page language="java" import="java.util.*" pageEncoding="UTF-8"%>
    <%@ taglib uri="/stringDeal" prefix="wghfn" %>
    <% request.setCharacterEncoding("utf-8"); %>
    
    <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
    <html>
      <head>
      
        
        <title>My JSP 'deal.jsp' starting page</title>
        
        
    
      </head>
      
      <body>
       内容为:<br>
       ${wghfn:shiftEnter(param.content)}
      </body>
    </html>
    
    

    相关文章

      网友评论

          本文标题:JAVA Web学习(17)___11.6 定义和使用EL函数

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