huangcan1688

在开发web程序的时候,数据库的设计避免不了要设置有关于时间存储的字段。这时候需要通过java的API进行时间字段的存入。

 

一、mysql数据库为例子

  如mysql数据库中的Date、DateTime、TimeStamp、Time类型

  1、Date:没有时间部分。以YYYY-MM-DD格式显示。支持的范围是\'1000-01-01\'到\'9999-12-31\'。需要3字节。

  2、DateTime:有日期和时间部分。以YYYY-MM-DD HH:MM:SS格式显示。支持的范围是\'1000-01-01 00:00:00\'到\'9999-12-31 23:59:59\'。需要8字节。

  3、Time:表示一天中的时间。以HH:MM:SS格式显示。支持的范围是\'00:00:00\'到\'23:59:59\'。

  4、TimeStamp:默认情况下是使用当前的时间。以YYYY-MM-DD HH:MM:SS格式显示。需要4字节。

 

  注意:

  (1) 在书写sql语句的时候,注意写入日期字段的时候用 \' \' 进行引入。如:values( \' timeOne \' )

  (2) 在日期的输入格式有很多种。如常用的"yyyy年MM月dd日  HH时mm分ss秒"、"yyyy-MM-dd HH:mm:ss"、"yyyy/MM/dd HH:mm:ss"

 

二、各种Date之间的转换

  1、获取当前系统时间和设置输出格式

Date date = new Date();

// 设置日期格式
SimpleDateFormat simpleDateFormat = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
String format = simpleDateFormat.format(date);
System.out.println(format);//输出格式:2020-02-13 10:30:44

 

  2、String转为Date

String time = "2020-02-13 10:30:44";
SimpleDateFormat simpleDateFormat = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
Date date = null;
try {
            
       date = simpleDateFormat.parse(time);// 转为Date
            
   } catch (ParseException e) {
            e.printStackTrace();
   }
   System.out.println(date); // Thu Feb 13 10:30:44 CST 2020

 

  3、String转为sql包中的Date

String str = "2020-02-13";
SimpleDateFormat simpleDateFormat = new SimpleDateFormat("yyyy-MM-dd");
java.sql.Date sqlDate = null;// sql包中的Date
 try {
            
      java.util.Date utildate = simpleDateFormat.parse(str);
      sqlDate = new java.sql.Date(utildate.getTime());
            
    } catch (ParseException e) {
         e.printStackTrace();
 }
     System.out.println(sqlDate); //转换为 sql包中的Date 2020-02-13

  

  4、Date转为String

Date date = new Date();
SimpleDateFormat simpleDateFormat = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
String str = simpleDateFormat.format(date);
System.out.println(str); //输出格式 2020-02-13 10:38:10

 

  5、Date转为Datetime/Timestamp

Date date = new Date();

long time = date.getTime();
Timestamp timestamp = new Timestamp(time);
System.out.println(timestamp); // 2020-02-13 10:47:40.349

 

  6、util.Date转换为sql.Date

//util.Date
Date date = new Date();
long longTime = date.getTime();  // 1581562292229
        
//sql.Date
java.sql.Date sDate = new java.sql.Date(longTime);
System.out.println(sDate);  // 2020-02-13
System.out.println(longTime);

 

 

      

分类:

技术点:

相关文章:

  • 2021-12-18
  • 2021-09-09
  • 2022-02-19
  • 2022-12-23
  • 2022-12-23
  • 2021-10-21
猜你喜欢
  • 2021-12-13
  • 2022-12-23
  • 2022-12-23
  • 2022-12-23
  • 2021-11-26
  • 2022-12-23
  • 2022-12-23
相关资源
相似解决方案