sql date 和 java date 区别
时间: 2023-07-19 18:11:59 浏览: 233
SQL Date和Java Date都是表示日期时间的类,但它们之间有一些区别。
SQL Date是java.sql.Date类的一个实例,它只存储日期,没有存储时间。它的年份是基于公元纪年,月份从1开始,日期从1开始。SQL Date的格式是“yyyy-MM-dd”。
Java Date是java.util.Date类的一个实例,它存储日期和时间。它的年份是基于1900年,月份从0开始,日期从1开始。Java Date的格式是“EEE MMM dd HH:mm:ss zzz yyyy”。
另外,Java 8中引入了新的日期时间API,即java.time包,它提供了更多的日期时间类和方法,比如LocalDate、LocalDateTime、ZonedDateTime等。可以根据具体需求选择使用适当的日期时间类。
相关问题
java.sql.Date和java.util.Date和java.sql.Timestamp详解
Java中的Date类是表示日期和时间的类,而java.sql.Date和java.sql.Timestamp是Date类的子类,它们都是用于处理日期和时间的类。其中,java.sql.Date是用于处理SQL DATE类型的日期,它只包含日期信息,没有时间信息;java.sql.Timestamp是用于处理SQL TIMESTAMP类型的日期,它包含日期和时间信息,精确到纳秒级别;而java.util.Date是用于处理Java中的日期和时间,它也包含日期和时间信息,但精确度只到毫秒级别。需要注意的是,java.sql.Date和java.sql.Timestamp都是java.util.Date的子类,因此它们都可以使用Date类中的方法。
java.sql.Date和java.util.Date和java.sql.Timestamp互相转换及设置格式
可以使用SimpleDateFormat类来设置日期格式,然后使用它们之间的parse()和format()方法进行转换。例如,可以使用以下代码将java.sql.Date转换为java.util.Date:
java.sql.Date sqlDate = new java.sql.Date(System.currentTimeMillis());
java.util.Date utilDate = new java.util.Date(sqlDate.getTime());
同样,可以使用以下代码将java.util.Date转换为java.sql.Date:
java.util.Date utilDate = new java.util.Date();
java.sql.Date sqlDate = new java.sql.Date(utilDate.getTime());
最后,可以使用以下代码将java.util.Date转换为java.sql.Timestamp:
java.util.Date utilDate = new java.util.Date();
java.sql.Timestamp timestamp = new java.sql.Timestamp(utilDate.getTime());
阅读全文