我想得到得到的结果:2008-03-20 13:30:00Timestamp temp = "2008-03-20 13:30:00.0"; //该值从数据库中获得java.text.SimpleDateFormat sdf = new java.text.SimpleDateFormat("yyyy-MM-dd HH:mm:ss");temp = Timestamp.valueOf(sdf.format(temp));//这个得出的结果还是:2008-03-20 13:30:00.0temp = Timestamp.valueOf((temp.toString()).substring(0, 19));//这个得出的结果还是:2008-03-20 13:30:00.0如果我再想得到的结果为:2008-03-20 13:30
也应该怎么处理呢? 觉得Timestamp 和 Date 就是有很大的差别!
也应该怎么处理呢? 觉得Timestamp 和 Date 就是有很大的差别!
上面这句不会报错?
没听说过这种隐式转换啊。
这个应该是数据库取出来的吧。不是string吧。
import java.sql.Timestamp;
import java.text.SimpleDateFormat;
import java.util.Calendar;
import java.util.Date;
public class TimeTest
{
public static void main(String[] args)
{
String s = "2008-03-20 13:30:00.0";
Timestamp ts = Timestamp.valueOf(s);
Calendar c = Calendar.getInstance();
c.setTime(ts);
SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd hh:mm");
System.out.println(sdf.format(c.getTime()));
}
}
个人感觉要是将时间戳的时间进行格式化,最好将其转换为Date或者Calendar类型。Timestamp 的精度要高一些,防止数据库数据脏读现象