EL表达式---自定义函数(转)

有看到一个有趣的应用了,转下来,呵呵!!

1.定义类MyFunction(注意:方法必须为 public static)

package com.tgb.jstl;         /**     * JSTL标签中的自定义函数库实现类      *     */      public class MyFunctions {          public static String sayHello(String name){            return  "Hello  " + name;          }      }  

2.提供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 http://java.sun.com/xml/ns/j2ee/web-jsptaglibrary_2_0.xsd"     version="2.0">     <description>myFunctions library</description>     <display-name>JSTL functions</display-name>     <tlib-version>1.1</tlib-version>        <!--这里的所谓“简称”,可以随便写-->     <short-name>mfn</short-name>     <!--这里的uri,可以随便写-->     <uri>http://www.tgb.com/functions</uri>         <function>       <!--这里name可以随便写-->       <name>say</name>       <!--这里最为重要,指定类所在位置,以及类方法的一些重要信息-->       <function-class>com.tgb.jstl.MyFunctions</function-class>       <function-signature>java.lang.String  sayHello(java.lang.String)</function-signature>     </function>        </taglib>  

3.在jsp页面中采用taglib引入函数库

<%@ taglib uri="http://www.tgb.com/functions" prefix="mfn" %>

4.在el表达式中采用前缀+冒号+函数名称使用

调用函数库相关函数,需要配合el表达式来使用。

${mfn:say("Tom") } <<---"Tom"可改为从EL表达式中取值

最新文章

  1. Key/Value之王Memcached初探:一、掀起Memcached的盖头来
  2. 百度地图api2.0体验
  3. Android 视频播放器进度的处理
  4. MySQL数据库的高可用性分析
  5. 【循序渐进学Python】5.Python常用流程控制及其他语句
  6. Codeforces Round #253 (Div. 1) A. Borya and Hanabi 暴力
  7. lsof,nc
  8. MySQL 学习笔记 (范式)
  9. jquery实现点击改变背景色,点击其他恢复原来背景色,被点击的改变背景色
  10. 如何设置gen_server在退出时执行相关操作
  11. 基于Sql Server 2008的分布式数据库的实践(一)
  12. Textbox服务器控件
  13. DllRegisterServer的调用失败的问题解决方法
  14. 容器化 — 基于Docker技术容器云
  15. Python 爬虫一 简介
  16. PAT基础6-1
  17. Python-接口自动化(一)
  18. SPLAY,LCT学习笔记(一)
  19. TypeScript set get
  20. 关于PCB的线宽与过孔

热门文章

  1. php 调用curl_init失败
  2. [ctfhub]SQL注入
  3. 学习笔记----C语言的面向对象
  4. Codeforces Round #567 (Div. 2) B. Split a Number
  5. 8千字干货教程|java反射精讲
  6. 解决python3使用cx_Freeze打包成exe后不能运行
  7. [算法总结] 动态规划 (Dynamic Programming)
  8. coding++:idea提交SVN或GIT时,忽略某些文件
  9. python学习要点(一)
  10. 泛型---&gt;Result返回结果封装