当前位置:编程问答 > JAVA >

Java开发中的时间对象的显示与处理

大家都知道,数据库中的时间是Date类型,而在页面中往往要显示yyyy-mm-dd格式,并且,时间对象在从JSP页面传递到前台Controller、后台Service往往要借助JSONObject,JSONObject只支持String类型。所以时间对象的保存和取出显示都涉及到Date到String的转化。
       假设我们的需求是,取得一个系统时间保存到数据库的表time中,然后再取出在页面中显示。那么,Controller从JSP页面接收输入的时间后要将时间转换为String类型以便于加到JSONObject中传递到后台。是这样做的:
Date date=new Date();  
      DateFormat dateFormat = new impleDateFormat("yyyy-MM-dd");
      String addTime = dateFormat.format(date);
time.put(“addTime”,addTime)
   那么从数据库中取出来,从而在页面中显示怎么做呢?
   同样的道理,Controller通过后台服务得到time集合的结果集,然后将其转换为String类型传到JSP页面显示。
      DateFormat dateFormat = new impleDateFormat("yyyy-MM-dd");
      String addTime = dateFormat.format(time.getAddTime());
   现在我们思考,如果需求是,时间作为一列,表中还有其他字段,我们要查询这一张表,那该怎么做。我们通过服务取得对象的集合,假设表名称是courseMappingVO,那么返回courseMappingVOList,并将其作为结果集传到JSP页面。那么时间怎么正常显示呢?
   就算时间不是作为表中的一列,而是作为一张表中的唯一一列,在Controller里面也不容易转换(转换当然不困难)后传到JSP页面显示。更何况是一张表中的一列,所以我们得思考能不能在JSP页面中转换,那样就不会为如何传递结果而犯愁了。答案是有的:同样是将courseMappingVoList作为结果传到JSP页面,JSP页面显示结果的代码如下:
   
    这样,时间就正常显示为yyyy-mm-dd的格式了。笔者测试页面如下:
 
补充:软件开发 , Java ,
CopyRight © 2012 站长网 编程知识问答 www.zzzyk.com All Rights Reserved
部份技术文章来自网络,