自定义标签,时间戳与日期时间转换 jsp页面

先说说自己的需求:

数据库多条数据,时间字段存的是10位php格式的时间戳,我是需要用java在jsp页面做数据列表展示,就牵扯到时间戳与日期格式时间转换问题。

本来可以new Date(时间戳)就可以得到一个Date对象,但是,php时间戳是10位,java的是13位,就需要转换一下,然后得到Date对象,在格式化,综合考虑,写了一个自定义

标签,只需要传入10位的时间戳,和自己需要转换的时间格式,就可以了。

php时间戳转换java时间戳:直接在最后加3个0就可以了,java时间戳转换php时间戳:去掉最后三位

 

标签java类:

 

package com.ilvy.core.tag;

import java.text.SimpleDateFormat;
import java.util.Date;

import javax.servlet.jsp.tagext.TagSupport;

public class DateTag extends TagSupport {

	/**
	 * 
	 */
	private static final long serialVersionUID = -5743295339374288539L;

	private long sjc;// 时间戳(输入)

	private String dTime;// 日期时间(输出)

	private String patten;// 日期格式

	/**
	 * 时间戳转换成日期时间
	 * 
	 * @return
	 */
	public int doStartTag() {
		try {
			String timeStr = sjc + "000";
			long timeL = Long.parseLong(timeStr);
			Date timeDate = new Date(timeL);
			SimpleDateFormat sdf = new SimpleDateFormat(patten);
		    dTime = sdf.format(timeDate);
		    pageContext.getOut().println(dTime);
		} catch (Exception e) {
			e.printStackTrace();
		}
		return EVAL_PAGE;
	}

	

	public long getSjc() {
		return sjc;
	}



	public void setSjc(long sjc) {
		this.sjc = sjc;
	}



	public String getdTime() {
		return dTime;
	}

	public void setdTime(String dTime) {
		this.dTime = dTime;
	}

	public String getPatten() {
		return patten;
	}

	public void setPatten(String patten) {
		this.patten = patten;
	}

	
}
标签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/jsee/web-jsptagLibrary_2_0.xsd"
    version="2.0">
    <tlib-version>1.2</tlib-version>
    <uri>DateTags</uri>
    <tag>
        <name>dateTag</name>
        <description>时间戳转换时间</description>
        <tag-class>com.ilvy.core.tag.DateTag</tag-class>
        <body-content>JSP</body-content>
          <attribute>
            <name>sjc</name>
             <type>long</type>  <!-- 属性类型 -->  
            <required>true</required><!-- 说明movieList属性是必需的 -->
            <rtexprvalue>true</rtexprvalue><!-- 说明movieList属性可以是一个运行时表达式(不用非得是一个常量String) -->
          </attribute>
          
           <attribute>
            <name>patten</name><!-- 转换格式 -->
             <type>string</type>  <!-- 属性类型 -->  
          </attribute>
    </tag>
   
</taglib>


jsp页面使用方法:
<%@taglib uri="DateTags"  prefix="d"%>
<d:dateTag sjc="${jstl}" patten="yyyy年MM月dd日  HH:mm"></d:dateTag>



 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值