date转string再转date问题?
博客专区 > Kidult 的博客 > 博客详情
date转string再转date问题?
Kidult 发表于7个月前
date转string再转date问题?
  • 发表于 7个月前
  • 阅读 9
  • 收藏 0
  • 点赞 0
  • 评论 0

腾讯云 技术升级10大核心产品年终让利>>>   

前台日历插件传进后台的日期格式为yyyy-MM-dd,数据库字段为结束日期endtIme需求需要将前台传入的时间转化为yyyy-MM-dd 23:59:59 格式,保存到库。

初步尝试:

 

public static void main(String[] args) throws ParseException {
        Date now= new Date();
        SimpleDateFormat sdf1=new SimpleDateFormat("yyyy-MM-dd 23:59:59");
        System.out.println(now);
        System.out.println(sdf1.format(now));
 }

输出

Thu May 25 13:19:25 CST 2017
2017-05-25 23:59:59
 

但经过SimpleDateFormat.format()处理后的日期已经变成字符串格式不能直接保存进数据库。

还需要将string类型转化为date类型。继续尝试

date转string再转date之后 时分秒为0了。。。

 

继续完善

 

最后发现是

SimpleDateFormat sdf1=new SimpleDateFormat("yyyy-MM-dd 23:59:59");

的问题。

 

日期转化"yyyy-MM-dd 23:59:59" 虽然能转成23:59:59,但不是真实的日期格式,需要再用“yyyy-MM-dd hh:mm:ss” 格式转化一下即可。完整转化代码如下

public static void main(String[] args) throws ParseException {
        Date now= new Date();
        Date d=null;
        SimpleDateFormat sdf1=new SimpleDateFormat("yyyy-MM-dd 23:59:59");
        SimpleDateFormat sdf2=new SimpleDateFormat("yyyy-MM-dd hh:mm:ss");
        d=sdf2.parse(sdf1.format(now));
        System.out.println(now);
        System.out.println(sdf1.format(now));
        System.out.println(d);
    }

输出:

Thu May 25 13:55:41 CST 2017
2017-05-25 23:59:59
Thu May 25 23:59:59 CST 2017

总结:注意日期格式转化。

 

标签: java date转string
共有 人打赏支持
粉丝 4
博文 8
码字总数 6721
×
Kidult
如果觉得我的文章对您有用,请随意打赏。您的支持将鼓励我继续创作!
* 金额(元)
¥1 ¥5 ¥10 ¥20 其他金额
打赏人
留言
* 支付类型
微信扫码支付
打赏金额:
已支付成功
打赏金额: