1、引入函数声明:

jsp页面需要引入自定义fns函数声明:<%@ taglib prefix="fns" uri="/WEB-INF/tlds/fns.tld" %>,自定义的tld文件位于/WEB-INF/tlds/fns.tld一般需要C标签配合使用,同时引入C标签声明:<%@ taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core" %>

2、fns.tld代码,仿照jstl的fn函数fn.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"><description>JSTL 1.1 functions library</description><display-name>JSTL functions sys</display-name><tlib-version>1.1</tlib-version><short-name>fns</short-name><uri>http://java.sun.com/jsp/jstl/functionss</uri><function><description>项目访问地址</description><name>getProjectUrl</name><function-class>common.config.Global</function-class><function-signature>java.lang.String getProjectUrl()</function-signature><example>${fns:getProjectUrl()}</example></function><function><description>获取配置</description><name>getConfig</name><function-class>common.config.Global</function-class><function-signature>java.lang.String getConfig(java.lang.String)</function-signature><example>${fns:getConfig(key)}</example></function></taglib>

3、为表达式函数(标签函数)提供后台服务类:common.config.Global:

/*** fns表达式函数服务类*/public class Global {/*** 当前对象实例*/private static Global global = new Global();/*** 保存全局属性值*/private static Map<String, String> map = Maps.newHashMap();/*** 属性文件加载对象*/private static PropertiesLoader loader = new PropertiesLoader("pro.properties");/*** 是/否*/public static final Integer YES = 1;public static final Integer NO = 0;/*** 对/错*/public static final String TRUE = "true";public static final String FALSE = "false";/*** 获取当前对象实例*/public static Global getInstance() {return global;}/*** 获取配置* @see ${fns:getConfig('project.url')}*/public static String getConfig(String key) {String value = map.get(key);return value;}/*** 访问地址*/public static String getProjectUrl() {return getConfig("project.url");}}

4、在jsp页面或js中使用自定义的表达式函数fns:

<script type="text/javascript">top.location.href='${fns:getProjectUrl()}/index.jsp';</script>

在标签中直接使用:

<div class="meet-our-team  margin-top-15"><c:if test="${customer!=null && customer.idCard!=null  }"><!-- el表达式拿到的值与其它值拼接,无需在使用+,直接拼接即可 --><img src="${fns:getConfig('IMG_SYS_ADDRESS')}?id=${customer.idCard }" alt=""/></c:if><p class="text-center margin-top-10">身份证</p>
</div>

自定义jstl fn函数fns相关推荐

  1. 自定义 jstl 标签 fns

    1.jsp 头部页面引入函数 jsp页面需要引入自定义fns函数声明:  <%@ taglib prefix="fns" uri="/WEB-INF/tlds/fn ...

  2. 自定义EL函数、自定义JSTL标签

    自定义EL函数 1.做一个类(静态) package com.maya.el;public class ELBiaoDaoShi {public static String TiHuan(String ...

  3. JSTL fn:split()函数

    jstl fn:split()函数代码和用法 -使用fn:split() 函数将一个字符串到一个数组根据分隔符字符串的子字符串. 使用fn:split() 函数将一个字符串到一个数组根据分隔符字符串的 ...

  4. 自定义 jstl 标签 fns:jsp中tld的function自定义方法扩展

    转自:  https://blog.csdn.net/FORLOVEHUAN/article/details/82623647 自定义 jstl 标签 fns: https://blog.csdn.n ...

  5. jstl fn:replace替换换行符

    textarea输入换行符后应该是'\n',在div中展示时替换成'<br>'找到一种方法用jsp标签 jstl fn:replace方法 使用fn:replace方法之前 先要把jstl ...

  6. EL表达式中fn函数(转载)

    EL表达式中fn函数 JSTL 使用表达式来简化页面的代码,这对一些标准的方法,例如bean的getter/setter方法,请求参数或者context以及 session中的数据的访问非常方便,但是 ...

  7. EL表达式中fn函数的强大功能,很简单,很好用,很强大

    很简单,很强大,EL表达式中fn函数的强大功能,比如举个例子,要计算某个对象中的某个集合的大小,直接用EL表达式就可以计算出来-- ${fn:length(clazze.course)} 使用fn函数 ...

  8. jsp页面中引用fn函数

    jsp中fn函数的用法 想要引用fn函数,首先要先引入fn标签,在jsp头部引入<%@ taglib prefix="fn" uri="http://java.su ...

  9. R语言编写自定义描述统计计算函数、使用doBy包的summaryBy函数计算不同分组(group)的描述性统计值(Descriptive statistics by group、样本个数、均值、标准)

    R语言编写自定义描述统计计算函数.使用doBy包的summaryBy函数计算不同分组(group)的描述性统计值(Descriptive statistics by group using summa ...

最新文章

  1. 技术图文:NumPy 的简单入门教程
  2. Java算法测试的输入模板
  3. matplotlib.pyplot常用画图方式函数封装(一)——.plot绘制折线图及设置坐标轴箭头完美解决
  4. PHP用空格分割文本为数组的方法
  5. tomcat的配置支持多个网站
  6. Stack Overflow通过关注性能,实现单块应用架构的扩展能力
  7. Django 页面报错 Maximum recursion depth exceeded
  8. div contenteditable 富文本字数限制_知网查重是如何统计字数的?
  9. 云服务厂商都在推荐轻量级的存储队列服务,用来取代原有的比较重的消息队列服务...
  10. 微信小程序API-定位(位置)
  11. eplan2.4安装教程
  12. IAM:瑞策科技位列《全球区块链专利排行榜》第五位
  13. CTF---Web入门第七题 猫抓老鼠
  14. HTML5中swiper实现图片查看功能
  15. python与医学统计_医学统计思维-数据库
  16. 海康威视人脸门禁对接开发(一)调用设备篇
  17. npm install执行报错:ENOENT: no such file or directory, open ‘D:\Node\package.json‘
  18. linux 双显示器双鼠标
  19. verycd文件搜索
  20. 蛋白标签\常用标签\选择标签的介绍

热门文章

  1. 软件科技理学硕士学位(香港理工大学)
  2. 机器人聊天软件c#_用c#快速实现的智能聊天机器人
  3. Linux应用开发4 如何获取系统参数信息(监测终端信息)
  4. SQL基础六【使用通配符过滤】
  5. Process Explorer简易图文教程
  6. 欧姆龙 CJ1W-ETN21功能块实现Socket TCP功能
  7. 采购是德科技原厂二手机,你还可以这样
  8. senior developer in Hongkong
  9. 2014/11/13_随想
  10. BeesCMS系统漏洞分析