EL表达式调用函数

1 EL表达式调用Javabean中的函数非常简单,只要有getXXX方法,就可以在页面上写${javaben.xxx}从而调用方法了

 

2 EL表达式调用标签<tag>中的方法:

如EL调用jstl中<fn:contains/>方法如下:

<%@ taglib prefix="fn" uri="http://java.sun.com/jsp/jstl/functions" %>

${fn:contains(stringA,stringB)}


另外EL调用自定义标签方法如下:

1.在WebRoot\WEB-INF目录下面建立一个mytag.tld文件。

2.Mytag.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"> 

    <tlib-version>1.0</tlib-version> 

    <short-name>el</short-name> 

<function>

<!-- 对这个EL方法的描述  -->

       <description>calculate string length</description> 

       <name>FunctionsEl</name><!-- 调用EL方法的名称 --> 

        <function-class>com.el.code.FunctionsEl</function-class> 

        <function-signature> 

             java.lang.String elEncode(java.lang.String)

        </function-signature> 

         <example>${el:FunctionsEl(str)}</example><!-- 例如 --> 

      </function> 

   </taglib>


3.在com.el.code包下面新建一个类名为FunctionsEl的类。

package com.gouwu.youboy.util;

 

import java.io.UnsupportedEncodingException;

import java.net.URLEncoder;

 

/**

 * @project XXX

 * @author : XXX

 * @version 1.0

 * @Create:2011 5:41:27 PM

 * @Update:

 * @describe:

 */

public class FunctionsEl {

    /**

     * 对中文进行转码

     * @param str 中文字符串

     * @return 中文编码过后的的字符串

     */

    public static String elEncode(String str) {

        String decodeStr = null;

        try {

            decodeStr = URLEncoder.encode(str, "UTF-8");

        } catch (UnsupportedEncodingException e) {

            e.printStackTrace();

        }

        return decodeStr;

    }

 

}


4.在JSP页面引用如下:

<%@ taglib prefix="el" uri="/WEB-INF/mytag.tld"%>

${el:FunctionsEl(iklist)}


 

 

 

你可能感兴趣的:(jsp,String,function,Class,import,encoding)