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

发表于:2013-1-08 09:25

字体: | 上一篇 | 下一篇 | 我要投稿

 作者:newcnzz    来源:51Testing软件测试网采编

  大家都知道,数据库中的时间是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的格式了。笔者测试页面如下:

《2023软件测试行业现状调查报告》独家发布~

关注51Testing

联系我们

快捷面板 站点地图 联系我们 广告服务 关于我们 站长统计 发展历程

法律顾问:上海兰迪律师事务所 项棋律师
版权所有 上海博为峰软件技术股份有限公司 Copyright©51testing.com 2003-2024
投诉及意见反馈:webmaster@51testing.com; 业务联系:service@51testing.com 021-64471599-8017

沪ICP备05003035号

沪公网安备 31010102002173号