我數據庫裡用到了日期類型。用java編程的時候同時import了java.util.*和java.sql.*,發現直接申明Date類型
Date dt;
會報錯,查了一下才發現有java.util.Date和java.sql.Date,在定義日期類型的時候要使用全名,就是像這樣:
java.util.Date udt;java.sql.Date sdt;
然後我就查java.util.Date和java.sql.Date的區別和用法,這方面網上資料挺全,我就不贅述了,大致區別就是java.util.Date支持日期和時間,而java.sql .Date只支持日期。後面我還用到了String轉java.sql.Date,這個在網上也能查到,我簡要介紹我比較喜歡的一種方法。
首先,準備一個SimpleDateFormat對象,使用SimpleDateFormat類需要import java.text.SimpleDateFormat
SimpleDateFormat df = new SimpleDateFormat(“yyyy-MM-dd”);//yyyy-MM-dd為我們想要轉換成的日期格式,一會兒被轉換的字符串也應按這個格式來寫
然後,準備一個java.util.Date對象和待轉換的字符串
複製代碼代碼如下:
String str = ”2011-06-30”;//這裡不能寫成2011/06/30或其他樣子,會報錯,只能按目標日期格式來yyyy-MM-dd
java.util.Date udt = null;
然後用df將str轉換成java.util.Date,並賦值給udt
udt = df.parse(str);
然後再從udt獲得我們需要的java.sql.Date
java.sql.Date sdt = new java.sql.Date(udt.getTime());
總結一下就是先用SimpleDateFormat將待轉換成日期的字符串格式化成java.util.Date類型,然後再從得到的java.util.Date對象得到java.sql.Date對象,我們可以將它寫成一個函數,代碼如下:
public java.sql.Date stringToSQLDate(String str){SimpleDateFormat sdf = new SimpleDateFormat(“yyyy-MM-dd”);Java.util.Date udt=null;try{udt = sdf.parse(str);}catch( Exceprion e){e.printStackTrace();}java.sql.Date sdt = new java.sql.Date(udt.getTime());return sdt;}以上所述就是本文的全部內容了,希望大家能夠喜歡。