zoukankan      html  css  js  c++  java
  • util.Date与sql.Date的异同以及相互转换

    Java中有两个Date类

    • 一个是java.util.Date通常情况下用它获取当前时间或构造时间
    • 另一个是java.sql.Date是针对SQL语句使用的,它只包含日期而没有时间部分
    • 两个类型的时间可以相互转化
    • 这三个类都是java.utl.Date的子类

    util.Date转sql.Date

            Date utilDate = new Date();//util.Date
            System.out.println("utilDate : " + utilDate);
            //util.Date转sql.Date
            java.sql.Date sqlDate = new java.sql.Date(utilDate.getTime());
            System.out.println("sqlDate : " + sqlDate);

     从运行结果看到util.date转成sql.date之后,只有年月日,没有时分秒。

    java.sql包下给出三个与数据库相关的日期时间类型:
        Date:表示日期,只有年月日,没有时分秒。会丢失时间;
        Time:表示时间,只有时分秒,没有年月日。会丢失日期;
        Timestamp:表示时间戳,有年月日时分秒,以及毫秒。

    util.Date转sql.Timestamp

            Date utilDate = new Date();//util utilDate
            System.out.println("utilDate : " + utilDate);
            Timestamp sqlDate = new Timestamp(utilDate.getTime());//uilt date转sql date
            System.out.println("sqlDate : " + sqlDate);

    sql.Date转util.Date

            System.out.println("*********util.Date转sql.Date*********");
            Date utilDate = new Date();//util.Date
            System.out.println("utilDate : " + utilDate);
            Timestamp sqlDate = new Timestamp(utilDate.getTime());//util.Date转sql.Date
            System.out.println("sqlDate : " + sqlDate);
    
            System.out.println("*********sql.Date转util.Date*********");
            System.out.println("sqlDate : " + sqlDate);
            Date date = new Date(sqlDate.getTime());//sql.Date转util.Date
            /*
            java.util.Date date = new java.util.Date(sqlDate.getTime());
             */
            System.out.println("utilDate : " + date);

    同时util.Date和sql.Date都可以用SimpleDateFormat格式化

            Date utilDate = new Date();//uilt.Date
            System.out.println("utilDate : " + utilDate);
    
            SimpleDateFormat format = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
            System.out.println("format : " + format.format(utilDate));
    
            System.out.println("**********************************************");
    
            Timestamp sqlDate = new Timestamp(utilDate.getTime());//uilt.Date转sql.Date
            System.out.println("sqlDate : " + sqlDate);
            System.out.println("format : " + format.format(sqlDate));

  • 相关阅读:
    call()与apply()的作用与区别
    Tomcat8/9的catalina.out中文乱码问题解决
    怎样查看Jenkins的版本
    每日日报2020.8.18
    528. Random Pick with Weight
    875. Koko Eating Bananas
    721. Accounts Merge
    515. Find Largest Value in Each Tree Row
    286. Walls and Gates (Solution 1)
    408. Valid Word Abbreviation
  • 原文地址:https://www.cnblogs.com/sunbr/p/12740937.html
Copyright © 2011-2022 走看看