0 0

求struts2.0时间比较的方法?5

页面上有个<s:date name="fcdate" format="yyyy-MM-dd HH:mm"/>值,我想判断这个日期,如果是最近三天的,就在前面加个NEW,如何实现?

问题补充:<s:iterator value="zbgg" status="status">
<dl>
<dt><a href="#")><s:property value='ftitle'/></a></dt>
<dd><s:date  name="fcdate" format="yyyy-MM-dd HH:mm"/></dd>
</dl>
</s:iterator>

回复ethen:你好!好像不行,加不了id呀。我是在标题后加new。

问题补充:
xxq 写道
不是很精确,可以直接用if 来比较的

兄弟,能不能说明白点,我也是想用if来表达,但是不会写

问题补充:
xiaoyuebata 写道
你那个在前面加new是什么意思··只是一个"NEW"字符串,还是代表new Date()这个关键字new


写个字符串,但我改为一个图片了,用JS可以实现,但是想知道<s:if>如何判断?

----------------------------------

问题补充:感谢ethen (高级程序员),xxq (初级程序员),xxq (初级程序员),ethen (高级程序员),xiaoyuebata (初级程序员),pwc_pengwenchao (高级程序员),xiaoyuebata (初级程序员) 及所有关注的朋友们,所有的回答给我启发,起初是想用JSP直接遍历后,加个if去判断,后来发现用到的是struts2.0,俺就不会了,之前没用过struts2.0,只知道有
<s:if test="borderTitle!=''">new</s:if>这种写法,不知道日期比较如何实现,结帖了,今天先就用js实现,下次再用pwc_pengwenchao和xiaoyuebata的方法,struts2.0来写在action里面。今天主要是不想在action里面又执行一次遍历,
帖一下我的笨方法,主要是ethen的JS提示。
<script type="text/javascript">
//时间比较
function show(shownew,ftime){
var d1 = new Date(document.getElementById(ftime).innerText.replace(/-/,"/"));
var d2 = new Date();
var fday=(d2-d1)/3600/24/1000;
if(fday<3){
document.getElementById(shownew).innerHTML="<img src='images/new01.gif' align='middle'/>";
}
}
</script>

//遍历条数

<s:iterator value="zbgg" status="status">
<dl <s:if test="#status.index%2==0">class='fff'</s:if>>
<dt><a href=#><s:property value='ftitle'/></a>
//放个空的id显示图片
<span id="zbgg<s:property value='#status.index' />"></span>
</dt>
//给时间加个ID
<dd id="zbggtime<s:property value='#status.index' />"><s:date  name="fcdate" format="yyyy-MM-dd HH:mm:ss"/>
</dd>
<script type="text/javascript">
//执行此方法
show('zbgg<s:property value='#status.index' />','zbggtime<s:property value='#status.index' />');
</script>
</dl>
</s:iterator>
这方法不好,希望有更好的方法出现,比如<s:if></s:if>直接判断,

结帖了,----------------------------------------
2010年11月29日 10:34

8个答案 按时间排序 按投票排序

0 0

采纳的答案

可以用js呀,得到这个控件的id,然后把控件里面的内容转换为时间格式进行判断,最后更新控件值。

2010年11月29日 10:37
0 0

用if是针对修改JSP页面不需要编译JAVA的应急修改方式,很霸道,不推荐
<%request.setAttribute("defaultTime", new java.util.Date().getTime());%>
<%request.setAttribute("lessTime",new java.util.Date().getTime() - 1000*60*60*24*3);%>

因为if是同类型之间比较,所以都要转化,将转化好的值放入request中

<s:if test ="#request.defaultTime > #request.lessTime">
sss1
</s:if>
<s:else>
ddd2</s:else>

2010年11月29日 16:34
0 0

呵呵··在stuts2的标签库里,貌似<s:date>标签加入id之后就不能显示date的信息.用js确实可以做出来,如果你想用<s:if>来做的话,那就最好在java代码里判断吧,否则在jsp页面上判断会很麻烦的,根据MVC的思想,这些业务逻辑也不应该在View层处理,所以应该是在Model即Action处理完毕之后,页面负责显示即可,我大概写了点,你参考下吧。

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

import com.opensymphony.xwork2.ActionSupport;

@SuppressWarnings({"serial","deprecation"})
public class CurDate extends ActionSupport{
	
	private Date curDate;
	
	private Date searchDate;
	
	private boolean isInThreeDay;
	
	private String msg;
	

	public String execute(){
		Calendar cal=Calendar.getInstance();
		//模拟出查询出的日期
		searchDate=new Date(cal.get(Calendar.YEAR)-1900,cal.get(Calendar.MONTH),cal.get(Calendar.DATE)-2);
		curDate=new Date(System.currentTimeMillis());
		DateFormat format=DateFormat.getDateInstance();
		System.out.println(format.format(searchDate)+":"+format.format(curDate));
		long result=curDate.getTime()-searchDate.getTime();
		//判断是否是在当前日期的前三天还是当前日期的后三天
		//当前日期是11月29,满足的日期应该是11月26到12月1日之间浮动
		result=result>0?result:searchDate.getTime()-curDate.getTime();
		//判断是否满足条件
		isInThreeDay=result<=3*24*3600*1000?true:false;
		return SUCCESS;
	}

	public Date getCurDate() {
		return curDate;
	}

	public void setCurDate(Date curDate) {
		this.curDate = curDate;
	}

	public Date getSearchDate() {
		return searchDate;
	}

	public void setSearchDate(Date searchDate) {
		this.searchDate = searchDate;
	}

	public boolean isInThreeDay() {
		return isInThreeDay;
	}

	public void setInThreeDay(boolean isInThreeDay) {
		this.isInThreeDay = isInThreeDay;
	}

	public String getMsg() {
		msg="查询出的日期在三天之内";
		return msg;
	}

	public void setMsg(String msg) {
		this.msg = msg;
	}
	
	
}


jsp页面:
<%@ page language="java" contentType="text/html; charset=gbk"
    pageEncoding="gbk"%>
<%@taglib prefix="s" uri="/struts-tags"%>
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=gbk">
<script src="../js/prototype1.6.1.js"></script>

</head>
<body>
	<s:if test="inThreeDay">
		<s:text name="msg"></s:text>
	</s:if>
	<s:date name="searchDate" format="yyyy-MM-dd HH:mm"/>
	<s:debug></s:debug>
</body>
	
</html>


希望对你有帮助哈·

2010年11月29日 15:32
0 0

直接在后台判断了,

.java
private Date fcdate;
private boolean isnew = false;

if (在三天内)
{
    isnew = true;
}

.jsp
<s:date name="fcdate" format="yyyy-MM-dd HH:mm"/><s:if test="${isnew}"><img src="new.jpg" /></s:if>

思想是这样,具体写法可能不同,自己改改。

2010年11月29日 14:09
0 0

你那个在前面加new是什么意思··只是一个"NEW"字符串,还是代表new Date()这个关键字new

2010年11月29日 13:47
0 0

你可以看看在页面中显示的是什么。可能name就是id。

2010年11月29日 11:46
0 0

建议在后台用JAVA比较好加个标识,也可以做到很精确

2010年11月29日 11:36
0 0

不是很精确,可以直接用if 来比较的

2010年11月29日 11:34

相关推荐

    初识[Struts2.0]并[使用Struts2.0]进行SSH集成

    5. **插件架构**:Struts2.0具有丰富的插件支持,如文件上传、日期时间选择等,这些插件可以轻松地扩展框架功能。 SSH集成步骤: 1. **Spring**:Spring提供依赖注入(DI)和面向切面编程(AOP),负责管理和协调...

    Struts2.0框架技术详解

    ### Struts2.0框架技术详解 #### 一、MVC思想 **1.1 Model I 模式和 Model II 模式** ##### 1.1.1 Model I 模式 在Model I模式下,整个Web应用几乎全部由JSP页面组成。JSP页面不仅接收处理客户端请求,还直接...

    Eclipse struts2.0可视化开发组件

    ### Eclipse Struts2.0 可视化开发组件知识点详解 #### 一、Struts2.0概述 在深入探讨Eclipse Struts2.0可视化开发组件之前,我们首先需要了解Struts2.0框架的基本概念及其优势。Struts2.0是一个用于Java EE平台的...

    Struts2.0+Spring2.0+Hibernate3.1登录及增删改查的完整演示示例

    应广大网友需求,自己抽了点时间写了一个Struts2.0+Spring2.0+Hibernate3.1的登录及增删改查的完整演示示例,以此奉献给大家,由于本人水平有限,有写的不好的地方还望大家多提宝贵意见,如果有不明白的地方请关注我的...

    个人知识管理系统 Struts2.0 + Spring + Hibernate

    Struts2.0 + Spring + Hibernate + DWR 对于三大框架目前还在学习阶段,做得不好的地方欢迎来mail指正yukiceo@126.com,或http://blog.csdn.net/yukiceo 每天面对大量的知识,时间一长,容易造成某些知识点的生疏...

    DengLu.rar_struts2.0

    【Struts2.0框架详解】 Struts2.0是Java Web开发中广泛使用的MVC(Model-View-Controller)框架,它极大地简化了企业级应用程序的开发过程。本项目"网络公告系统"就是基于Struts2.0构建的,旨在提供一个用于发布和...

    struts2.0中s:datetimepicker标签使用范例

    在探讨《struts2.0中s:datetimepicker标签使用范例》这一主题时,我们首先需要理解struts2框架以及其内置的s:datetimepicker标签的用途与配置方法。Struts2是一个开源的Web应用框架,基于MVC(Model-View-Controller...

    struts2.0+ztree+jquery动态生成树结构

    Struts2.0、ZTree 和 jQuery 是在Web开发中常用的三大技术,它们结合使用可以实现动态生成树状结构的功能,这种结构常用于展现层级关系的数据,如组织架构、文件目录等。本篇将深入探讨如何利用这三种技术实现这一...

    柱状图 圆饼图 曲线图 struts2.0 jfreechart

    Struts2.0是一个流行的Java Web框架,它简化了MVC(模型-视图-控制器)架构的实现,提高了开发效率。JFreeChart则是一个强大的Java图表库,能够生成多种类型的图表,包括柱状图、圆饼图和曲线图,非常适合在数据可视...

    struts2.0标签库简介

    Struts2.0是Struts框架的一个重大升级版本,它在继承了Struts1.x的优良特性基础上,引入了大量的新功能和改进,特别是在标签库方面,提供了更为强大、灵活和易于使用的标签集,大大简化了Web应用的开发过程。...

    基于struts2.0的考勤系统

    【基于Struts2.0的考勤系统】是一款利用了现代Web开发技术构建的企业级应用,主要用于管理和追踪员工的出勤情况。系统的核心是Struts2.0框架,这是一个强大的MVC(Model-View-Controller)框架,它使得开发者能够更...

    struts2.0课件

    Struts2.0是Java Web开发中的一个框架,属于Model 2 MVC架构的实现,它在Web应用发展历程中扮演了重要角色。Model 2模式强调将业务逻辑、数据访问和用户界面分离,以提高代码的可维护性和复用性。 在Web应用早期,...

    struts2.0拦截器完整

    Struts2.0是Java Web开发中一个非常重要的框架,它极大地简化了MVC(Model-View-Controller)架构的实现。拦截器(Interceptor)是Struts2.0中的核心组件之一,它允许开发者在Action执行前后插入自定义的逻辑,以...

    NetBeans下的Struts2.0插件

    Struts2.0是一款强大的Java Web开发框架,它简化了MVC(模型-视图-控制器)架构的实现,提供了一种优雅的方式来组织和管理应用的业务逻辑、控制流程和表现层。NetBeans是一个功能丰富的集成开发环境(IDE),特别...

    struts2.0jar

    Struts2.0是一款强大的Java Web开发框架,它基于Model-View-Controller(MVC)设计模式,旨在简化企业级应用程序的开发。这个压缩包"struts2.0jar"包含的是Struts2.0框架运行所需的全部JAR文件,确保了在你的项目中...

    struts2.0的标签学习资料

    Struts2.0 是一款基于MVC设计模式的开源Java Web框架,它的核心部分包括了丰富的标签库,这些标签极大地简化了JSP页面中的代码,提高了开发效率。在Struts2.0中,标签不再像Struts1.x那样分为html、bean、logic、...

    struts2.0 spring hibernate整合jar包

    Struts2.0、Spring和Hibernate是Java Web开发中的三大框架,它们的整合使用能够构建出高效、松耦合的应用程序。这个压缩包文件“struts2.0 spring hibernate整合jar包”提供了将这三个框架集成所需的核心库,使得...

    Struts2.0+hibernate+spring紧急发布2.0代码生成器

    Struts2.0、Hibernate和Spring是Java Web开发中的三个重要框架,它们分别负责MVC模式中的视图、模型和控制层。这个“Struts2.0+hibernate+spring紧急发布2.0代码生成器”是一个工具,旨在帮助开发者快速生成基于这三...

    struts2.0 taglib 标签库

    Struts2.0 Taglib标签库是Struts2框架中的核心组成部分,它提供了一组丰富的JSP标签,简化了视图层的开发,使得开发者可以更加专注于业务逻辑,而不用过多地处理HTML和Java代码的混杂。这些标签主要分为以下几大类:...

Global site tag (gtag.js) - Google Analytics