sql中的date数据到java中的date类型转换

代码中设置的超时机制没有起效,发现是从数据库中取的sql中的date数据到java中的date的值变化了,原因如下:

java代码写的sql语句取到的sql值的类型为Java.sql.Date,该类型在取到值后,会默认的将时分秒去掉,只保留日期,再代码中做的date转换结果就错了。所以,从数据库中取时间的时候,需要先做类型转换,在sql语句中将时间转换为string类型的取出来

to_char(TF_START_TIME, 'yyyy-mm-dd hh24:mi:ss') "stateTime"

然后在代码中,用java.util.Date类型去转换。

static final String DEFAULT_DATE_FORMAT = "yyyy-MM-dd HH:mm:ss";

SimpleDateFormat df = new SimpleDateFormat(DEFAULT_DATE_FORMAT );
Date result= df.parse(value);

这样才能保证值的正确性。


附上一段其他兄弟写的两个类型之间互相转换的东西作为补充:

 java.sql.Date转为java.util.Date

java.sql.Date date=new java.sql.Date();
java.util.Date d=new java.util.Date (date.getTime());

 java.util.Date转为java.sql.Date
 java.util.Date utilDate=new Date();
java.sql.Date sqlDate=new java.sql.Date(utilDate.getTime());
java.sql.Time sTime=new java.sql.Time(utilDate.getTime());
java.sql.Timestamp stp=new java.sql.Timestamp(utilDate.getTime());



评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值