java时间与字符串转换
?
//date转换字符串
??Date date = new Date();
??SimpleDateFormat sdf= new SimpleDateFormat();//时间格式化的类
??sdf.applyPattern("yyyy-MM月dd日");
??System.out.println(sdf.format(date));//format把时间转换成字符串了
///~
output:
2011-08月24日
?
?
?//字符串转时间
??String sDate = "2008-08-08";
??sdf.applyPattern("yyyy-MM-dd");
??Date nDate = null;
??try {
???//nDate = (Date)sDate;??不能如此强转
???nDate = sdf.parse(sDate);//parse方法把字符串转成时间
???System.out.println(nDate);
??} catch (ParseException e) {
???e.printStackTrace();
??}///~
??output:
??Fri Aug 08 00:00:00 CST 2008
?
?
?//java.util.Date 转 java.sql.Date
??java.sql.Date sqlDate = new java.sql.Date(nDate.getTime());
??System.out.println(sqlDate);
?///~
?output:
?2008-08-08
?
???java.sql.Date 和 java.sql.Timestamp 和 java.sql.Time 都是从 java.util.Date继承
???java.sql.Date只保存日期,不保存时间
???Timestamp既有日期也有时间
???而java.sql.Time 只保存时间
???所以存数据库时,用Timestamp
??public static void main(String[] args) {
??System.out.println(new Date());
??//SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd hh:mm:ss");
??java.sql.Date s = new java.sql.Date(new Date().getTime());
??System.out.println(s);
?}