自定义一个EL函数 一般就是一下几个步骤,顺便提供一个工作常用的 案例:

1、编写一个java类,并编写一个静态方法(必需是静态方法),如下所示:

public class DateTag {

    private final static Logger logger = LogManager.getLogger(DateTag.class);

    private static final long serialVersionUID = -2312310581852395045L;

    public static String dateFormat(String date,String format) {
String dateStr="";
if(StringUtils.isBlank(format)){
format="yyyy-MM-dd HH:mm";
}
if(StringUtils.isNotBlank(date) && !"null".equals(date.toLowerCase())){
Long date_;
try {
date_ = Long.parseLong(date);
Date date2 = new Date(date_);
SimpleDateFormat df = new SimpleDateFormat(format);
dateStr = df.format(date2);
} catch (Exception e){
logger.error(e);
}
}
return dateStr; } }

2、创建一个标签描述文件(tld)文件,其就是一个xml文件,一般放在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">
<tlib-version>1.0</tlib-version>
<short-name>jnb</short-name>
<uri>http://java.ding.com/jsp/jstl/date/functions</uri>
<function>
  <description>函数描述:第一个参数是long类型的时间,第二个是时间格式</description>
  <name>dateFormat</name>
  <function-class>com.mall.core.utils.DateTag</function-class>
 <function-signature>java.lang.String dateFormat(java.lang.String,java.lang.String)</function-signature>
</function>
</taglib>

3、在web.xml中注册该tld文件(</web-app>标签内)

<jsp-config>
<taglib>
<taglib-uri>http://java.ding.com/jsp/jstl/date/functions</taglib-uri><!--与tld中uri一致就可-->
<taglib-location>/WEB-INF/tld/mytld.tld</taglib-location><!--tld所在的位置--> </taglib>
</jsp-config>

4、在JSP中使用该函数
先利用taglib指令引入该tld

<%@ taglib prefix="jnb" uri="http://java.ding.com/jsp/jstl/date/functions" %>

用以下方式代码来调用

${jnb:dateFormat(mapResult.dateBegin,"MM-dd")}

自定义一个EL函数的更多相关文章

  1. 在String()构造器不存在的情况下自定义一个MyString()函数,实现如下内建String()方法和属性:

    在String()构造器不存在的情况下自定义一个MyString()函数,实现如下内建String()方法和属性: var s = new MyString("hello"); s ...

  2. Python基础之用PyQt5界面代码分离以及自定义一个槽函数

    最近开发一个项目,需要用到界面,遇到界面不能实时更新的问题,看到网上很多用槽函数,但是大多都是些button的,并不是我需要的,要么就是整数的,后来自己进行尝试,写了一个自定义的槽函数处理treewi ...

  3. EL函数以及自定义标签的应用

    一.EL函数(调用普通类的静态方法) 编写步骤(自定义EL函数的编写步骤即自定义标签的编写步骤): ①编写一个普通的java类,提供一个静态方法,功能自定,例如下: package cn.wzbril ...

  4. EL函数和自定义EL函数

    简介 EL原本是JSTL1.0中的技术(所以EL和JSTL感情如此好就是自然的了),但是从JSP2.0开始,EL就分离出来纳入了JSP的标准了.但是EL函数还是和JSTL技术绑定在一起.下面将介绍如何 ...

  5. 【JSP】EL函数和自定义EL函数

    简介 EL原本是JSTL1.0中的技术(所以EL和JSTL感情如此好就是自然的了),但是从JSP2.0开始,EL就分离出来纳入了JSP的标准了.但是EL函数还是和JSTL技术绑定在一起.下面将介绍如何 ...

  6. 10.自定义EL函数和自定义标签

    需要在JSP页面中进行一些常见逻辑操作(如对字符串进行操作),首先考虑是否可以用到sun公司提供的EL函数库(fn.tld)和JSTL 核心标签库 如果sun公司的EL函数库没有或者无法满足,就需要自 ...

  7. EL表达式 JSTL中的常用EL函数 动态数据的国际化

    ELppt: EL 全名为Expression Language.EL主要作用: 获取数据: •EL表达式主要用于替换JSP页面中的脚本表达式,以从各种类型的web域 中检索java对象.获取数据.( ...

  8. jsp web JavaBean MVC 架构 EL表达式 EL函数 JSTL

     一.JavaBean概念(非常重要) 1.JavaBean就是遵循一定书写规范的Java类型(开发中:封装数据) a.必须有默认的构造方法,类必须是public的   public class  ...

  9. javaweb学习总结(三十)——EL函数库

    一.EL函数库介绍 由于在JSP页面中显示数据时,经常需要对显示的字符串进行处理,SUN公司针对于一些常见处理定义了一套EL函数库供开发者使用. 这些EL函数在JSTL开发包中进行描述,因此在JSP页 ...

随机推荐

  1. .Net软件开发面试技巧

    2016.11.20日,我们毕业了!到了大家各奔东西的日子了,有留在家里的,有另求出路的,有留在哈尔滨的,有去北京的!去北京的一共有11个同学,我就是这11个人里的一个! 大学刚毕业的时候,在济南上班 ...

  2. Ansible 系列之 Ad-Hoc介绍及使用

    Ad-Hoc 介绍 一.什么是ad-hoc 命令? ad-hoc 命令是一种可以快速输入的命令,而且不需要保存起来的命令.就相当于bash中的一句话shell.这也是一个好的地方,在学习ansible ...

  3. HttpClient 工具

    什么是httpclient HTTP 协议可能是现在 Internet 上使用得最多.最重要的协议了,越来越多的 Java 应用程序需要直接通过 HTTP 协议来访问网络资源.虽然在 JDK 的 ja ...

  4. linux 之 tcpdump

    tcpdump详细命令 -i 参数指定监听网口 -c 参数指定监听的数据包数量 -s 参数指定监听数据包大小 -w 参数指定监听数据包写入文件 如果要监听某几台主机数据包 例如10.10.10.10. ...

  5. Ichars制作数据统计图

    数据统计图基本上每个网站的后台都要做,不仅要做还要的非常详细才行,这样才能全面的具体的了解网站数据.之前用的jfreechart没有iChartjs用着方便,也没有iChartjs的效果炫,所以果断弃 ...

  6. iOS 原生的 UIButton 点击事件是不允许带多参数的,唯一的一个参数就是默认UIButton本身 那么我们该怎么实现传递多个参数的点击事件呢?

    UIButton *btn = // create the button objc_setAssociatedObject(btn, "firstObject", someObje ...

  7. java properties 对list的支持

    经测试,原生的properties 对 list 不支持. 参考样例如下: id=1 id=2 具体代码如下: java.util.Properties prop = new Properties() ...

  8. OpenCV使用FindContours进行二维码定位

    我使用过FindContours,而且知道有能够直接寻找联通区域的函数.但是我使用的大多只是"最大轮廓"或者"轮廓数目"这些数据.其实轮廓还有另一个很重要的性质 ...

  9. 帝国CMS万能标签的使用

    标签名称: 带模板的信息调用标签[万能标签]   [ecmsinfo]栏目ID/专题ID,显示条数,标题截取数,是否显示栏目名,操作类型,标签模板ID,只显示有标题图片[/ecmsinfo] 说明:e ...

  10. input的type属性引申的日历组件

    HTML5规范里只规定date新型input输入类型,并没有规定日历弹出框的实现和样式.所以,各浏览器根据自己的设计实现日历.目前只有谷歌浏览器完全实现日历功能.相信这种局面很快就会结束,所有的浏览器 ...