util.Date与sql.Date转换
Posted jamesblog1995
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了util.Date与sql.Date转换相关的知识,希望对你有一定的参考价值。
一、 时间类型
1. sql包下,
Date:只有年月日。
Time:只有时分秒。
Timestamp:表示时间戳,有年月日时分秒,以及毫秒。
2. util包下,
Date是sql包下三种时间类型的父类。
二、 转化方式
1. sql.Date/Time/Timestamp转化为util.Date
并不需要,因为util.Date是其父类,是把子类对象给父类的引用。
2. util.Date转化为sql.Date/Time/Timestamp
java.utl.Date d = new java.util.Date();
java.sql.Date date = new java.sql.Date(d.getTime()); //只有年月日
Time time = new Time(d.getTime()); //只有时分秒
Timestamp timestamp = new Timestamp(d.getTime());
三、 其他
1. 这里所有时间日期都可以被SimpleDateFormat格式化format()
SimpleDateFormat f=new SimpleDateFormat(
"yyyy-MM-dd hh:mm:ss"
);
f.format(stp);
f.format(sTime);
f.format(sqlDate);
f.format(utilDate)
java.sql.
Date
sqlDate=java.sql.
Date
.valueOf(
" 2005-12-12"
);
utilDate=new java.util.
Date
(sqlDate.getTime());
另类取得年月日的方法:
import java.text.SimpleDateFormat;
import java.util.*;
java.util.
Date
date
= new java.util.
Date
();
如果希望得到YYYYMMDD的格式SimpleDateFormat
sy1=new SimpleDateFormat(
"yyyyMMDD"
);
String dateFormat=sy1.format(
date
);
如果希望分开得到年,月,日SimpleDateFormat
sy=new SimpleDateFormat(
"yyyy"
);
SimpleDateFormat sm=new SimpleDateFormat(
"MM"
);
SimpleDateFormat sd=new SimpleDateFormat(
"dd"
);
String syear=sy.format(
date
);
String smon=sm.format(
date
);
String sday=sd.format(
date
);
以上是关于util.Date与sql.Date转换的主要内容,如果未能解决你的问题,请参考以下文章
java.util.Date 不能转换为 java.sql.Date [重复]
java.sql.date和java.util.date的区别和转换
在使用jdbc 里面出现了日期数据转换错误,java.util.date 类型的数据怎样转换成java.sql.date 类型。