Chinaunix首页 | 论坛 | 博客
  • 博客访问: 592902
  • 博文数量: 68
  • 博客积分: 5070
  • 博客等级: 大校
  • 技术积分: 1312
  • 用 户 组: 普通用户
  • 注册时间: 2007-10-11 14:20
文章分类

全部博文(68)

文章存档

2011年(3)

2010年(30)

2009年(17)

2008年(18)

我的朋友

分类: Java

2010-12-02 11:54:41

我用的是ibatis框架

为了做一个聊天功能,发现不能显示最新的消息,一看,原来oracle中存入的时间不对

oracle中要存入 年月日 时分秒首先要把 oracle中这列设置为 timestamp 类型

其次,在JAVA代码中,可以这样写,我这里是获取当前时间,如果不是当前时间,而是指定时间,请用simpledataformat 去格式化,这个我没研究

Java代码 复制代码
  1. import java.util.Date;   
  2. import java.sql.Timestamp;   
  3.   
  4.   
  5. Date time=new Date();   
  6. Timestamp timestamp=new Timestamp(time.getTime());  

 Timestamp类型构造的时候需要一个长整型的数字,那么用 Date 的getTime()获取当前的毫秒数

 

在ibatis中插入的时候如下:

Java代码 复制代码
  1. insert into postMsg   
  2.         values(#sendTime:TIMESTAMP#)  

 这个时候在oracle中就有了 精确的时间,当然要读出来时分秒,还得格式化一下,我在页面展示时间,用jstl来展示,这个需要引入标签声明:

Java代码 复制代码
  1. <%@ taglib uri="" prefix="c"%>   
  2. <%@ taglib uri="" prefix="fmt"%>   
  3. <%@ taglib prefix="fn" uri=""%>  

 格式化时间的时候:

Java代码 复制代码
  1. "${postMsg.sendTime}" pattern="yyyy-MM-dd HH:mm:ss"/>  

 如果只需要显示某个字段的部分内容,可以如下显示:

Java代码 复制代码
  1. ${fn:substring(postMsg.msgDes,0,10)} 
阅读(9938) | 评论(0) | 转发(0) |
给主人留下些什么吧!~~