日期:2014-05-20  浏览次数:21091 次

JSTL 时间加减问题 谢谢进来看看
HTML code

  <c:set var="datenow" value="<%=new Date()%>"/>
                ${search.t_time}//插入时间
              <c:if test="${datenow}-${search.t_time}<=24">
              <img src="Image/new.gif"></c:if>        


我想做一个时间提示,现在时间减去插入时间小于一天的显示一个new.gif图片提示,上面这样写不行,该怎么写呢?谢谢回答

------解决方案--------------------
Date是对象,是不能进行运算的,需要转换:
System.currentTimeMillis当前时间,long类型。
86400000是一天的毫秒数,你要把search.t_time也转换成当前的毫秒数就可以实现 


HTML code

        <c:set var="datenow" value="<%=System.currentTimeMillis()%>" />
        ${search.t_time}//插入时间
        <c:if test="${datenow}-${search.t_time}<=86400000L">
            <img src="Image/new.gif">
        </c:if>

------解决方案--------------------
探讨
Date是对象,是不能进行运算的,需要转换:
System.currentTimeMillis当前时间,long类型。
86400000是一天的毫秒数,你要把search.t_time也转换成当前的毫秒数就可以实现



HTML code
<c:set var="datenow" value="<%=System.currentTimeMillis()%>" />
${search.t_time}//插入时间
<c:if test="${datenow}-${search.t_time}<=86400000L…

------解决方案--------------------
${search.t_time} 是Date类型还是字符串啊??
------解决方案--------------------
哦,这样就可以转换成long类型的了。

Java code


        String search_time="20081010";
        //按照日期格式加参数,我假设的是yyyyMMdd
        SimpleDateFormat dateFormat=new  SimpleDateFormat("yyyyMMdd");
        try {
            long searchtime=dateFormat.parse(search_time).getTime();
            System.out.println(searchtime);
        } catch (ParseException e) {
            e.printStackTrace();
        }

------解决方案--------------------
<%@ taglib uri="http://java.sun.com/jsp/jstl/fmt" prefix="fmt" %>

<fmt:formatDate value="${search.t_time}" pattern="yyyy-MM-dd hh:mm:ss" />