`

常用taglib及用法

阅读更多

常用taglib及用法

返回Oak>>

 

1. 创建.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>zzq tag library</description>
	<display-name>zzq taglib</display-name>
	<tlib-version>1.1</tlib-version>
	<short-name>zzq-rj</short-name>
	<uri>http://zzqrj.com/taglibs/mytag</uri>
	<tag>
		<name>dateFormater</name>
		<tag-class>com.neu.edu.utils.mytaglib.DateFormater</tag-class>
		<body-content>empty</body-content>
	    <attribute>
	        <description>
				Date and/or time to be formatted.
	        </description>
	        <name>date</name>
	        <required>true</required>
	        <rtexprvalue>true</rtexprvalue>
	    </attribute>
	</tag>
</taglib>
 

    命名该文件为my.tld,存放路径:WEB-INF/tlds/my.tld

 

2. 标签类的实现,如下:

package com.neu.edu.utils.mytaglib;
import java.io.IOException;
import java.util.Date;

import javax.servlet.jsp.JspException;
import javax.servlet.jsp.JspWriter;
import javax.servlet.jsp.tagext.JspFragment;
import javax.servlet.jsp.tagext.SimpleTagSupport;

public class DateFormater extends SimpleTagSupport {
    
    private Date date;

    public void doTag() throws JspException, IOException {
        JspWriter out = getJspContext().getOut();
        out.write(DateFormaterUtils.getFormatDate(date));
        JspFragment f = getJspBody();
        if (f != null) f.invoke(out);
    }

    public Date getDate() {
        return date;
    }

    public void setDate(Date date) {
        this.date = date;
    }
    
}

========================
package com.neu.edu.utils.mytaglib;

import java.text.DateFormat;
import java.text.SimpleDateFormat;
import java.util.Calendar;
import java.util.Date;
import java.util.GregorianCalendar;

public final class DateFormaterUtils {

    private static DateFormat BEFORE_YEAR_FORMAT = new SimpleDateFormat("yyyy年M月d日 HH:mm");

    private static DateFormat YEAR_FORMAT = new SimpleDateFormat("M月d日 HH:mm");

    private static DateFormat DAY_FORMAT = new SimpleDateFormat("HH:mm");

    public static String getFormatDate(Date date) {
        if(date!=null){
            Calendar now = GregorianCalendar.getInstance();
            Calendar time = GregorianCalendar.getInstance();
            time.setTime(date);
            if (now.get(Calendar.YEAR) == time.get(Calendar.YEAR)) {
                int day = now.get(Calendar.DAY_OF_YEAR) - time.get(Calendar.DAY_OF_YEAR);
                if (day > 1) {
                    return YEAR_FORMAT.format(date);
                } else if (day == 1) {
                    return "昨天 " + DAY_FORMAT.format(date);
                } else if (day == 0) {
                    int hour = now.get(Calendar.HOUR_OF_DAY) - time.get(Calendar.HOUR_OF_DAY);
                    int minute = hour * 60 + now.get(Calendar.MINUTE) - time.get(Calendar.MINUTE);
                    if (minute > 60) {
                        return "今天 " + DAY_FORMAT.format(date);
                    } else if (minute <= 60 && minute > 5) {
                        return minute + "分钟前 ";
                    } else {
                        return "刚刚更新";
                    }
                }
            } else {
                return BEFORE_YEAR_FORMAT.format(date);
            }
        }
        return null;
    }
}


 

 

3. 在jsp文件中引入并使用

 

    jsp文件头引入:<%@ taglib uri="http://zzqrj.com/taglibs/mytag " prefix="zzq-rj "%>

    jsp中使用:<% Date date=new Date();request.setAttribute("date",date); %>
                    date:<small style="color:#888;"><zzq-rj:dateFormater date="${date}"/>

 

4. 常用taglib

 

    (1) 文本切割 Go>>

    (2)


返回Oak>>

分享到:
评论

相关推荐

    pager-taglib 分页标签使用

    下面将详细解释`pager-taglib`的使用方法、核心概念以及其在实际项目中的应用。 一、`pager-taglib`概述 `pager-taglib`主要由两个部分组成:标签(Tag)和标签库(Taglib)。标签库是一个包含一系列标签的资源包,...

    pager-taglib分页方法

    **Pager-taglib分页方法详解** Pager-taglib是Java Web开发中一种常用的分页标签库,它极大地简化了在JSP页面中实现分页功能的过程。这个标签库通常与Servlet和JSP一起使用,尤其在大数据量展示时,提供用户友好的...

    pager-taglib 分页框架+附带例子

    下面将详细阐述`pager-taglib`的使用方法、核心概念以及相关实例。 1. **分页原理** 分页是处理大量数据时常用的一种技术,通过将数据分割成多个小部分(页)来提高网页加载速度和用户体验。`pager-taglib`通过...

    分页处理框架pager-taglib

    **分页处理框架pager-taglib详解** 在Java Web开发中,分页处理是常见的需求,尤其是在数据量庞大的情况下,为了...通过深入理解和实践`pageDemo`,可以快速掌握在实际项目中使用`pager-taglib`的方法,提升开发效率。

    Apache Standard Taglib(standard.jar 和 jstl.jar )jar下载

    Apache Standard Taglib是Java服务器页面(JSP)开发中常用的一组标签库,它提供了许多标准的标签来简化页面逻辑和增强HTML输出。这个库主要包含两个核心的JAR文件:`standard.jar`和`jstl.jar`。 `standard.jar`是...

    OA pagertaglib ssh2 增删改查

    在本项目中,SSH2的使用结合了annotation配置,这是一种简洁的配置方式,通过在类或方法上添加注解,可以快速完成框架的配置,减少了XML配置文件的复杂性,提高了开发效率。例如,Spring的@Service、@Repository和@...

    分页插件(pager-lib.jar)及使用方法和实例

    分页插件是Java Web开发中非常常用的一个工具,它能帮助我们有效地管理大量数据的显示,避免一次性加载过多数据导致页面响应速度慢或者内存溢出的问题。在本例中,我们将关注`pager-lib.jar`这个分页插件以及如何在...

    JSP 常用的标签以及用法举例

    ### JSP 常用的标签以及用法举例 #### JSP 概述 JSP(JavaServer Pages)是一种基于Java的技术,用于构建动态Web页面。JSP部署于网络服务器上,例如常用的Tomcat服务器,它可以响应客户端发送的请求,并根据请求...

    JSP入门教程之客户端验证、常用输出方式及JSTL基本用法

    2. **编写JavaScript方法**:使用`function`声明方法,不需要指定返回值类型,可以返回任意结果,参数列表也不需要指定参数类型。 ```javascript function 方法名(参数列表) { // 方法体 } ``` 3. **建立表单...

    常用的实用的web.xml

    11. **`&lt;taglib&gt;`**: 配置自定义标签库,包括URI(`&lt;taglib-uri&gt;`)和TLD文件的位置(`&lt;taglib-location&gt;`),用于JSP页面使用自定义标签。 12. **`&lt;filter&gt;`**和**`&lt;filter-mapping&gt;`**: 配置过滤器,`&lt;filter&gt;`...

    常用JSP语法以及数据库连接

    2. **建立连接(Establishing a Connection)**: 使用`Class.forName()`加载驱动,然后通过`DriverManager.getConnection()`方法建立与数据库的连接。 3. **创建Statement或PreparedStatement对象(Creating ...

    jstl和standard的jar

    3. **Function标签库**:包含一些常用函数,可以方便地在JSP页面中使用。 4. **XML标签库**:用于处理XML数据。 5. **JDBC标签库**:简化了数据库操作。 **Standard.jar详解** Standard.jar是JSTL实现的一部分,它...

    struts2常用标签总结

    - 引入库:在JSP页面中使用`&lt;%@ taglib&gt;`指令引入Struts2标签库,通常设置prefix为`s`。 - 配置过滤器:在`web.xml`中配置Struts2的过滤器,如`StrutsPrepareAndExecuteFilter`。 4. **标签的使用示例** - `s:...

    JSP中操作数据库的常用SQL标签用法总结

    下面我们将详细介绍`&lt;sql:setDataSource&gt;`、`&lt;sql:update&gt;`和`&lt;sql:query&gt;`三个常用的SQL标签。 1. ****: 这个标签用于设定数据源,即连接到数据库的相关信息。它的基本语法结构如下: ```xml [var = "varName...

    jsp学习常用标签!!!!!

    - **声明标签库**:在JSP页面顶部使用`&lt;%@ taglib %&gt;`指令来声明自定义标签库。 - **prefix**:指定前缀,用于引用该标签库中的标签。 - **uri**:指向标签库描述符(TLD)文件的URI。 - **编写Tag Handler类**:...

    Struts 2.1.8_学习源码

    Struts2_03Taglib : Struts2常用标签的使用方法 Struts2默认支持OGNL、JSTL、Groovy和Velcity表达式 Struts2_04ActionResultType : Struts2关于Action跳转类型的应用 对各种不同的跳转类型使用的实例 Struts2_05...

    JSTL标签库下载和配置使用

    在本教程中,我们将深入探讨JSTL的下载、配置以及使用方法。 ### 一、JSTL的下载 JSTL的最新版本通常可以在Apache软件基金会的官方网站上找到。你可以访问[Apache Tomcat的网站]...

    JSTL详解 DOC文档 较全的JSTL标记说明

    本文详细介绍了 JSTL 的基本概念、环境搭建以及核心标签的使用方法。通过示例展示了如何使用 JSTL 来简化 JSP 页面的开发流程。此外,还讨论了如何配置 `.tld` 文件和 `.jar` 文件,以及介绍了 JSTL 的其他标签库。...

    JSTL常用标签总结

    同样的方法可以用来设置JavaBean对象的属性值,如设置一个名为"stu"的JavaBean对象的age属性值。 第三,标签用于移除JSP页面中的某个变量。比如,若想移除名为"username"的session范围内的变量,可以使用。 接下来...

    java常用API大全1

    API文档详细描述了Action、Form、Taglib等关键组件,有助于理解框架的工作原理和使用方法。 5. w3schoolWeb全套教程.chm:w3school是一个知名的在线学习平台,提供的这个CHM文件可能包含了其关于Web开发的全套教程...

Global site tag (gtag.js) - Google Analytics