EL表达式调用函数

http://blog.csdn.net/it_man/article/details/7657691

首先说一下ognl调用方式

<s:setname="albumImg"value="@com.iss.portal.base.util.FileTools@getImgByWH(#oneAlbum.cover,'100X100')">s:set>

其次

EL表达式调用自定义函数

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

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

如EL调用jstl中方法如下:\

[java] view plain copy
  1. <%@ taglib prefix="fn" uri="http://java.sun.com/jsp/jstl/functions" %>  
  2.   
  3. ${fn:contains(stringA,stringB)}  


 

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

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

2.Mytag.tld内容是

 

[java] view plain copy
  1. "1.0" encoding="UTF-8"?>   
  2.   
  3.  "http://java.sun.com/xml/ns/j2ee"   
  4.   
  5.     xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"   
  6.   
  7.     xsi:schemaLocation="http://java.sun.com/xml/ns/j2ee   http://java.sun.com/xml/ns/j2ee/web-jsptaglibrary_2_0.xsd"   
  8.   
  9.     version="2.0">   
  10.   
  11.     1.0   
  12.   
  13.     <short-name>elshort-name>   
  14.   
  15.   
  16.   
  17.   
  18.   
  19.        calculate string length   
  20.   
  21.        FunctionsEl   
  22.   
  23.         class>com.el.code.FunctionsElclass>   
  24.   
  25.            
  26.   
  27.              java.lang.String elEncode(java.lang.String)  
  28.   
  29.            
  30.   
  31.          ${el:FunctionsEl(str)}   
  32.   
  33.          
  34.   
  35.      

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

[java] view plain copy
  1. package com.gouwu.youboy.util;  
  2.   
  3.    
  4.   
  5. import java.io.UnsupportedEncodingException;  
  6.   
  7. import java.net.URLEncoder;  
  8.   
  9.    
  10.   
  11. /** 
  12.  
  13.  * @project XXX 
  14.  
  15.  * @author : XXX 
  16.  
  17.  * @version 1.0 
  18.  
  19.  * @Create:2011 5:41:27 PM 
  20.  
  21.  * @Update: 
  22.  
  23.  * @describe: 
  24.  
  25.  */  
  26.   
  27. public class FunctionsEl {  
  28.   
  29.     /** 
  30.  
  31.      * 对中文进行转码 
  32.  
  33.      * @param str 中文字符串 
  34.  
  35.      * @return 中文编码过后的的字符串 
  36.  
  37.      */  
  38.   
  39.     public static String elEncode(String str) {  
  40.   
  41.         String decodeStr = null;  
  42.   
  43.         try {  
  44.   
  45.             decodeStr = URLEncoder.encode(str, "UTF-8");  
  46.   
  47.         } catch (UnsupportedEncodingException e) {  
  48.   
  49.             e.printStackTrace();  
  50.   
  51.         }  
  52.   
  53.         return decodeStr;  
  54.   
  55.     }  
  56.   
  57.    
  58.   
  59. }  


4.在JSP页面引用如下:

[java] view plain copy
  1. <%@ taglib prefix="el" uri="/WEB-INF/mytag.tld"%>  
  2.   
  3. ${el:FunctionsEl(iklist)} 

你可能感兴趣的:(jsp)