Chinaunix首页 | 论坛 | 博客
  • 博客访问: 419536
  • 博文数量: 155
  • 博客积分: 2590
  • 博客等级: 少校
  • 技术积分: 2161
  • 用 户 组: 普通用户
  • 注册时间: 2012-10-25 09:33
文章分类

全部博文(155)

文章存档

2015年(1)

2014年(2)

2013年(55)

2012年(97)

分类: Java

2012-11-12 11:34:11

大家都知道,数据库中的时间是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的格式了。笔者测试页面如下:
原文地址:
阅读(604) | 评论(0) | 转发(0) |
给主人留下些什么吧!~~