java、MySQL时间类型的转换及存储(Timestamp、Date、String、Long)

  • Post author:
  • Post category:java




  1. import


    java.sql.Connection;



  2. import


    java.sql.PreparedStatement;



  3. import


    java.sql.SQLException;



  4. import


    java.sql.Timestamp;



  5. import


    java.text.DateFormat;



  6. import


    java.text.ParseException;



  7. import


    java.text.SimpleDateFormat;



  8. import


    java.util.Date;




  9. public




    class


    Test {



  10. public




    static




    void


    main(String[] args)


    throws


    Exception {


  11. DateFormat dateFormat =

    new


    SimpleDateFormat(


    “yyyy-MM-dd HH:mm:ss”


    );


    //首先设定日期时间格式,HH指使用24小时制,hh是使用12小时制






  12. //获取当前时间,并转换为String




  13. Date date =

    new


    Date();


    //获取当前时间,Date型




  14. String dateStr = dateFormat.format(date);

    // Date型转换成String型,可直接存储进数据库




  15. System.out.println(

    “String:”


    + dateStr);




  16. //将当前时间转换为从1970年1月1日到现在所经历的毫秒数




  17. Long dateLong = date.getTime();

    // Date型转换成Long型毫秒数,用于计算




  18. System.out.println(

    “毫秒数dateLong:”


    + dateLong);



  19. Timestamp timestamp =

    new


    Timestamp(dateLong);


    //Long型毫秒数转为Timestamp型,可直接存储进数据库





  20. System.out.println(

    “Timestamp:”


    + timestamp);



  21. Long dateLong2 = timestamp.getTime();

  22. System.out.println(

    “毫秒数dateLong2:”


    + dateLong2);


    //Timestamp类型转换为Long型毫秒数





  23. Date date2 =

    null


    ;



  24. try


    {


  25. date2 = dateFormat.parse(dateStr);

    //String型转换为Date型




  26. }

    catch


    (ParseException e1) {


  27. e1.printStackTrace();

  28. }

  29. System.out.println(

    “Date:”


    + date2);



  30. String dateStr2 = dateFormat.format(date2);

    //Date型转换为String型




  31. System.out.println(

    “String:”


    + dateStr2);



  32. Date date3 =

    new


    Date(dateLong2);


    //Long型毫秒数转换为Date型




  33. System.out.println(

    “date3:”


    + date3);





  34. Connection conn = DB.createConn();

  35. String insert_sql =

    “insert into _test values (0,'”


    + dateStr +


    “‘);”


    ;



  36. //      String insert_sql = “insert into _test values (0,'” + dateLong +”‘);”;





  37. //      String insert_sql = “insert into _test values (0,'” + timestamp +”‘);”;





  38. //以上三个sql语句都是可以执行的,即String、Long、Timestamp三种格式的数据都是可以直接存储的




  39. System.out.println(insert_sql);

  40. String sql =

    “insert into _test values (null,?)”


    ;


  41. PreparedStatement ps = DB.prepare(conn, sql);


  42. try


    {


  43. ps.executeUpdate(insert_sql);

  44. }

    catch


    (SQLException e) {


  45. e.printStackTrace();

  46. }

  47. DB.close(ps);

  48. DB.close(conn);


  49. }

  50. }

其中,MySQL中error_date字段使用的是datetime类型。



版权声明:本文为qqtingshuo原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。