java.util.Date 转 java.sql.Time
时间: 2024-10-26 22:02:35 浏览: 28
java日期转换
`java.util.Date` 类代表的是从 1970 年 1 月 1 日 00:00:00 GMT 开始的那一刻起所经过的毫秒数,而 `java.sql.Time` 类则表示的是小时、分钟和秒,没有日期部分。如果你想将一个 `Date` 对象转换为 `Time` 对象,你可以通过提取时间部分来完成。
以下是步骤:
```java
import java.sql.Time;
import java.sql.Timestamp;
import java.util.Calendar;
public Time convertToDateToTime(Date date) {
Calendar calendar = Calendar.getInstance();
calendar.setTime(date);
calendar.set(Calendar.YEAR, 1900); // 时间戳到时间,不需要年份信息
calendar.set(Calendar.MONTH, Calendar.JANUARY); // 设置为一月
calendar.set(Calendar.DAY_OF_MONTH, 1); // 设置为1日
calendar.set(Calendar.HOUR_OF_DAY, 0);
calendar.set(Calendar.MINUTE, 0);
calendar.set(Calendar.SECOND, 0);
calendar.set(Calendar.MILLISECOND, 0);
return new Time(calendar.getTimeInMillis());
}
```
这里我们先创建了一个 `Calendar` 对象,并设置它为给定的 `Date` 对应的日期和时间,然后移除所有的年份、月份以外的时间部分,最后将剩余的部分转换为 `Time` 对象。
阅读全文