java.util.date与 java.sql.date区别
时间: 2023-09-01 18:09:01 浏览: 111
Java.util.date与java.sql.date区别和转换
5星 · 资源好评率100%
在Java中,`java.util.Date`和`java.sql.Date`是两个表示日期和时间的类,它们之间有一些区别。
1. 功能不同:`java.util.Date`是用于表示日期和时间的类,可以精确到毫秒级别。它提供了一系列方法来操作日期和时间,例如获取年、月、日、时、分、秒等。而`java.sql.Date`是`java.util.Date`的子类,它继承了父类的大部分功能,并且还提供了对应于SQL DATE类型的特定功能。
2. 存储方式不同:`java.util.Date`内部存储了一个长整型的时间戳,表示从1970年1月1日00:00:00 GMT开始经过的毫秒数。它没有时区信息,存储的是相对于格林威治标准时间的绝对时间。而`java.sql.Date`是用于与数据库交互的日期类型,它只存储了年、月、日的信息,没有时分秒,并且在存储时会自动进行日期部分的截断。
3. 用途不同:由于`java.sql.Date`是专门用于与数据库进行交互的日期类型,因此在进行数据库操作时,通常会使用`java.sql.Date`来表示日期字段。而在其他情况下,一般会使用`java.util.Date`来表示日期和时间。
需要注意的是,虽然`java.sql.Date`是`java.util.Date`的子类,但它们之间并不完全兼容。如果需要在两者之间进行转换,可以使用对应的构造方法或者使用`java.sql.Date`和`java.util.Date`之间的转换方法。
阅读全文