java.util.Date與java.sql.Date的區(qū)別
我數(shù)據(jù)庫(kù)里用到了日期類(lèi)型。用java編程的時(shí)候同時(shí)import了java.util.*和java.sql.*,發(fā)現(xiàn)直接申明Date類(lèi)型
Date dt;
會(huì)報(bào)錯(cuò),查了一下才發(fā)現(xiàn)有java.util.Date和java.sql.Date,在定義日期類(lèi)型的時(shí)候要使用全名,就是像這樣:
java.util.Date udt; java.sql.Date sdt;
然后我就查java.util.Date和java.sql.Date的區(qū)別和用法,這方面網(wǎng)上資料挺全,我就不贅述了,大致區(qū)別就是java.util.Date支持日期和時(shí)間,而java.sql.Date只支持日期。后面我還用到了String轉(zhuǎn)java.sql.Date,這個(gè)在網(wǎng)上也能查到,我簡(jiǎn)要介紹我比較喜歡的一種方法。
首先,準(zhǔn)備一個(gè)SimpleDateFormat對(duì)象,使用SimpleDateFormat類(lèi)需要import java.text.SimpleDateFormat
SimpleDateFormat df = new SimpleDateFormat(“yyyy-MM-dd”);//yyyy-MM-dd為我們想要轉(zhuǎn)換成的日期格式,一會(huì)兒被轉(zhuǎn)換的字符串也應(yīng)按這個(gè)格式來(lái)寫(xiě)
然后,準(zhǔn)備一個(gè)java.util.Date對(duì)象和待轉(zhuǎn)換的字符串
String str = ”2011-06-30”;//這里不能寫(xiě)成2011/06/30或其他樣子,會(huì)報(bào)錯(cuò),只能按目標(biāo)日期格式來(lái)yyyy-MM-dd
java.util.Date udt = null;
然后用df將str轉(zhuǎn)換成java.util.Date,并賦值給udt
udt = df.parse(str);
然后再?gòu)膗dt獲得我們需要的java.sql.Date
java.sql.Date sdt = new java.sql.Date(udt.getTime());
總結(jié)一下就是先用SimpleDateFormat將待轉(zhuǎn)換成日期的字符串格式化成java.util.Date類(lèi)型,然后再?gòu)牡玫降膉ava.util.Date對(duì)象得到j(luò)ava.sql.Date對(duì)象,我們可以將它寫(xiě)成一個(gè)函數(shù),代碼如下:
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; }
以上所述就是本文的全部?jī)?nèi)容了,希望大家能夠喜歡。
相關(guān)文章
IntelliJ IDEA遠(yuǎn)程Debug Linux的Java程序,找問(wèn)題不要只會(huì)看日志了(推薦)
這篇文章主要介紹了IntelliJ IDEA遠(yuǎn)程Debug Linux的Java程序,找問(wèn)題不要只會(huì)看日志了,本文給大家介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友可以參考下2020-09-09詳解Java的MyBatis框架中的緩存與緩存的使用改進(jìn)
很多人在使用MyBatis的緩存后經(jīng)常會(huì)遇到MySQL分頁(yè)查詢(xún)的顯示問(wèn)題,針對(duì)于此,這里我們就來(lái)詳解Java的MyBatis框架中的緩存與緩存的使用改進(jìn),首先來(lái)回顧一下MyBatis的緩存機(jī)制與執(zhí)行:2016-06-06基于Java在netty中實(shí)現(xiàn)線程和CPU綁定
這篇文章主要介紹了基于Java在netty中實(shí)現(xiàn)線程和CPU綁定,文章圍繞主題的相關(guān)內(nèi)容展開(kāi)詳細(xì)介紹,具有一定的參考價(jià)值,需要的小伙伴可以參考一下2022-05-05java設(shè)計(jì)模式—靜態(tài)代理模式(聚合與繼承方式對(duì)比)
下面小編就為大家?guī)?lái)一篇java設(shè)計(jì)模式—靜態(tài)代理模式(聚合與繼承方式對(duì)比)。小編覺(jué)得挺不錯(cuò)的,現(xiàn)在就分享給大家,也給大家做個(gè)參考。一起跟隨小編過(guò)來(lái)看看吧2017-05-05mybatis-plus分頁(yè)查詢(xún)的實(shí)現(xiàn)示例
這篇文章主要介紹了mybatis-plus分頁(yè)查詢(xún)的實(shí)現(xiàn)示例,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧2020-08-08基于Java中最常用的集合類(lèi)框架之HashMap(詳解)
下面小編就為大家?guī)?lái)一篇基于Java中最常用的集合類(lèi)框架之HashMap(詳解)。小編覺(jué)得挺不錯(cuò)的,現(xiàn)在就分享給大家,也給大家做個(gè)參考。一起跟隨小編過(guò)來(lái)看看吧2017-11-11