Skip to content
This repository has been archived by the owner on Jul 28, 2022. It is now read-only.

feilong isInTime

feilong edited this page May 4, 2017 · 2 revisions

判断一个日期(date),是否在一个时间区间内(beginDate,endDate)

自定义标签参数说明:

参数 说明 是否必须required 默认 是否支持动态参数
date 一个时间,如果为null,则使用当前时间 false new Date() true
beginDate 开始时间,beginDate和 beginDateString 二者只能选择其一 false   true
endDate 结束时间,endDate和 endDateString 二者只能选择其一 false true
beginDateString 开始时间,beginDate和 beginDateString 二者只能选择其一 false true
endDateString 结束时间,endDate和 endDateString 二者只能选择其一 false true
pattern 如果使用的 beginDateString 和 endDateString ,其format模式 false true

注: 

  • 要么设置 beginDate+endDate
  • 要么设置 beginDateString+endDateString+pattern
  • 此标签的实现为[] 闭区间的形式,适合时间非科学精准的项目

示例:

1.jsp 顶端 申明引用

<%@ taglib prefix="feilong" uri="http://java.feilong.com/tags-common"%>

2.代码编写

场景描述: 循环输出100个商品,每个商品上线时间onlinetime在(当前时间-31天,当前时间)之间,那么显示"新品"

2.1 beginDate+endDate 形式

<%
	request.setAttribute("onlineTime", DateUtil.string2Date("2012年10月31日 10:00:00", "yyyy年MM月dd日 HH:mm:ss"));
 
	//如果现在是 2012-10-31 16:45
	Date endDate = new Date();
	request.setAttribute("beginDate", DateUtil.addDay(endDate, -31));
	request.setAttribute("endDate", endDate);
%>
 
<feilong:isInTime date="${onlineTime}" beginDate="${beginDate }" endDate="${endDate}">
	bingo
</feilong:isInTime>

springmvc将<%%>代码移动到 controller 里面

2.2 beginDateString+endDateString+pattern 形式

<feilong:isInTime beginDateString="2010年8月15日 00:00:00" endDateString="2016年8月15日 23:59:59" pattern="yyyy年MM月dd日 HH:mm:ss">
         bingo beginDateString+endDateString+pattern
</feilong:isInTime>