util.Date与sql.Date转换
程序员文章站
2022-11-08 23:04:04
一、 时间类型 1. sql包下, Date:只有年月日。 Time:只有时分秒。 Timestamp:表示时间戳,有年月日时分秒,以及毫秒。 2. util包下, Date是sql包下三种时间类型的父类。 二、 转化方式 1. sql.Date/Time/Timestamp转化为util.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
);
借鉴自:
及