最近无意中发现,在oracle中同一样的一个Date类型字段,存储的日期格式有两种不同的情况,第一种是2011-1-1 12:00:00,第二种是2011-1-1,仔细查找发现在向数据库中写数据的时候定义的变量的问题。

第一种是:java.util.Date类型的变量,第二种是:java.sql.Date类型的变量,后来写了下面的代码测试了下。

java.util.Date和java.sql.Date 区别应该是:java.util.Date 类型写到数据库后存储的值可以到秒,java.sql.Date 类型的写入后只能到日期。

import java.io.File;
import java.sql.Date;
import java.text.SimpleDateFormat;


public class Test {

  public static void main(String[] args) throws Exception {
   
        java.util.Date nowUtil =new java.util.Date();        // java.util.Date
        java.sql.Date nowSql=new java.sql.Date(System.currentTimeMillis());//java.sql.Date
        
        SimpleDateFormat format=new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
        System.out.println(format.format(nowUtil));//格式化 输出
        System.out.println(format.format(nowSql));//格式化 输出
        System.out.println(nowUtil); //直接 输出
        System.out.println(nowSql);  //直接 输出

                    
  }      
}

以上代码输出结果:

2017-11-13 14:10:03
2017-11-13 14:10:03
Mon Nov 13 14:10:03 CST 2017
2017-11-13

相关文章:

  • 2022-12-23
  • 2022-12-23
  • 2021-08-18
  • 2022-12-23
  • 2022-12-23
猜你喜欢
  • 2022-12-23
  • 2021-07-24
  • 2023-03-27
  • 2022-12-23
  • 2022-12-23
  • 2022-12-23
相关资源
相似解决方案