欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

在Java中String和Date、Timestamp之間的轉(zhuǎn)換

 更新時間:2015年12月29日 14:19:30   作者:Matrix54  
這篇文章主要介紹了在Java中String和Date、Timestamp之間的轉(zhuǎn)換 的相關(guān)資料,需要的朋友可以參考下

一、String與Date(java.util.Date)互轉(zhuǎn)

     1.1 String -> Date

String dateStr = "http:// ::";  
    Date date = new Date();  
   //注意format的格式要與日期String的格式相匹配  
   DateFormat sdf = new SimpleDateFormat("yyyy/MM/dd HH:mm:ss");  
   try {  
     date = sdf.parse(dateStr);  
      System.out.println(date.toString());  
    } catch (Exception e) {  
      e.printStackTrace();  
    } 
 String dateStr = "2010/05/04 12:34:23";
 Date date = new Date();
 //注意format的格式要與日期String的格式相匹配
 DateFormat sdf = new SimpleDateFormat("yyyy/MM/dd HH:mm:ss");
 try {
  date = sdf.parse(dateStr);
  System.out.println(date.toString());
 } catch (Exception e) {
  e.printStackTrace();
 } 

  1.2 Date -> String

   日期向字符串轉(zhuǎn)換,可以設(shè)置任意的轉(zhuǎn)換格式format

String dateStr = "";  
   Date date = new Date();  
   //format的格式可以任意  
    DateFormat sdf = new SimpleDateFormat("yyyy/MM/dd HH:mm:ss");  
   DateFormat sdf = new SimpleDateFormat("yyyy-MM-dd HH/mm/ss");  
    try {  
      dateStr = sdf.format(date);  
     System.out.println(dateStr);  
      dateStr = sdf.format(date);  
      System.out.println(dateStr);  
    } catch (Exception e) {  
      e.printStackTrace();  
    } 
 String dateStr = "";
 Date date = new Date();
 //format的格式可以任意
 DateFormat sdf = new SimpleDateFormat("yyyy/MM/dd HH:mm:ss");
 DateFormat sdf2 = new SimpleDateFormat("yyyy-MM-dd HH/mm/ss");
 try {
  dateStr = sdf.format(date);
  System.out.println(dateStr);
  dateStr = sdf2.format(date);
  System.out.println(dateStr);
 } catch (Exception e) {
  e.printStackTrace();
 } 

 二、String與Timestamp互轉(zhuǎn)

  2.1 String ->Timestamp

   使用Timestamp的valueOf()方法

Timestamp ts = new Timestamp(System.currentTimeMillis());  
    String tsStr = "-- ::";  
     try {  
       ts = Timestamp.valueOf(tsStr);  
       System.out.println(ts);  
    } catch (Exception e) {  
      e.printStackTrace();  
    } 
 Timestamp ts = new Timestamp(System.currentTimeMillis());
 String tsStr = "2011-05-09 11:49:45";
 try {
  ts = Timestamp.valueOf(tsStr);
  System.out.println(ts);
 } catch (Exception e) {
  e.printStackTrace();
 } 

   注:String的類型必須形如: yyyy-mm-dd hh:mm:ss[.f...] 這樣的格式,中括號表示可選,否則報錯?。?!

    如果String為其他格式,可考慮重新解析下字符串,再重組~~

    2.2 Timestamp -> String

  使用Timestamp的toString()方法或者借用DateFormat

Timestamp ts = new Timestamp(System.currentTimeMillis());  
    String tsStr = "";  
    DateFormat sdf = new SimpleDateFormat("yyyy/MM/dd HH:mm:ss");  
    try {  
      //方法一  
      tsStr = sdf.format(ts);  
     System.out.println(tsStr);  
     //方法二  
    tsStr = ts.toString();  
      System.out.println(tsStr);  
    } catch (Exception e) {  
     e.printStackTrace();  
   } 
 Timestamp ts = new Timestamp(System.currentTimeMillis());
 String tsStr = "";
 DateFormat sdf = new SimpleDateFormat("yyyy/MM/dd HH:mm:ss");
 try {
  //方法一
  tsStr = sdf.format(ts);
  System.out.println(tsStr);
  //方法二
  tsStr = ts.toString();
  System.out.println(tsStr);
 } catch (Exception e) {
  e.printStackTrace();
 } 

 很容易能夠看出來,方法一的優(yōu)勢在于可以靈活的設(shè)置字符串的形式。

三、Date( java.util.Date )和Timestamp互轉(zhuǎn)

  聲明:查API可知,Date和Timesta是父子類關(guān)系

  3.1 Timestamp -> Date

Timestamp ts = new Timestamp(System.currentTimeMillis());  
   Date date = new Date();  
   try {  
     date = ts;  
      System.out.println(date);  
    } catch (Exception e) {  
     e.printStackTrace();  
    } 
 Timestamp ts = new Timestamp(System.currentTimeMillis());
 Date date = new Date();
 try {
  date = ts;
  System.out.println(date);
 } catch (Exception e) {
  e.printStackTrace();
 }

 很簡單,但是此刻date對象指向的實體卻是一個Timestamp,即date擁有Date類的方法,但被覆蓋的方法的執(zhí)行實體在Timestamp中。

   3.2 Date -> Timestamp

   父類不能直接向子類轉(zhuǎn)化,可借助中間的String~~~~

java.sql.Date 只存儲日期數(shù)據(jù)不存儲時間數(shù)據(jù)
// 會丟失時間數(shù)據(jù)
preparedStatement.setDate(1, new java.sql.Date(date.getTime()));
//可以這樣來處理
preparedStatement.setTimestamp(1, new java.sql.Timestamp(new java.util.Date().getTime()));
 //想要得到完整的數(shù)據(jù),包括日期和時間,可以這樣
java.util.Date d = resultSet.getTimestamp(1);
//這樣處理更合適一些,可以避免一些潛在Timestamp 問題
java.util.Date d = new java.util.Date(resultSet.getTimestamp(1).getTime());

自己補的話,這樣的話:

        往數(shù)據(jù)庫存儲的時候可以接收 java.util.Date類型 再用getTime()方法得到代表那個Date對象的long值,再以這個long值 構(gòu)造一個Timestamp對象 存進數(shù)據(jù)庫中。

       從存數(shù)據(jù)庫里取的時候,可以先得到Timestamp用他的getTime()方法得到long值,再以這個long值構(gòu)造一個java.util.Date對象,這樣就可以對這個Date對象操作了。不如說 new SimpleTimeFormat("yyyyy-MM-dd HH:mm:ss").format()等等

相關(guān)文章

  • SpringCloud Zuul過濾器實現(xiàn)登陸鑒權(quán)代碼實例

    SpringCloud Zuul過濾器實現(xiàn)登陸鑒權(quán)代碼實例

    這篇文章主要介紹了SpringCloud Zuul過濾器實現(xiàn)登陸鑒權(quán)代碼實例,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友可以參考下
    2020-03-03
  • springbean的八種加載方式匯總

    springbean的八種加載方式匯總

    這篇文章主要介紹了springbean的八種加載方式,一種是XML方式聲明bean,使用@Component及其衍生注解@Controller?、@Service、@Repository定義bean,還有其他方法,本文給大家介紹的非常詳細,需要的朋友可以參考下
    2022-10-10
  • Java實現(xiàn)暴力匹配算法

    Java實現(xiàn)暴力匹配算法

    暴力匹配算法是一種簡單的字符串匹配算法,本文主要介紹了Java實現(xiàn)暴力匹配算法,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友們下面隨著小編來一起學習學習吧
    2023-06-06
  • Gson序列化指定忽略字段的三種寫法詳解

    Gson序列化指定忽略字段的三種寫法詳解

    在我們?nèi)粘J褂胘son序列化框架過程中,經(jīng)常會遇到在輸出json字符串時,忽略某些字段,那么在Gson框架中,要想實現(xiàn)這種方式,可以怎么處理呢,本文就來介紹一下
    2021-10-10
  • 談?wù)勗贘ava發(fā)送郵件中遇到的的問題

    談?wù)勗贘ava發(fā)送郵件中遇到的的問題

    本文介紹了在利用Java發(fā)送郵件過程中遇到的的兩個問題,以及如何解決這兩個問題。如果大家也遇到了這些問題,可以來參考借鑒。
    2016-08-08
  • Java流形式返回前端的實現(xiàn)示例

    Java流形式返回前端的實現(xiàn)示例

    ? Java后端開發(fā)項目時,需要給前端傳一些數(shù)據(jù),本文主要介紹了Java流形式返回前端的實現(xiàn)示例,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友們下面隨著小編來一起學習學習吧
    2023-04-04
  • Spring Boot實現(xiàn)STOMP協(xié)議的WebSocket的方法步驟

    Spring Boot實現(xiàn)STOMP協(xié)議的WebSocket的方法步驟

    這篇文章主要介紹了Spring Boot實現(xiàn)STOMP協(xié)議的WebSocket的方法步驟,小編覺得挺不錯的,現(xiàn)在分享給大家,也給大家做個參考。一起跟隨小編過來看看吧
    2019-05-05
  • java實現(xiàn)多人聊天工具(socket+多線程)

    java實現(xiàn)多人聊天工具(socket+多線程)

    這篇文章主要為大家詳細介紹了java實現(xiàn)多人聊天工具,文中示例代碼介紹的非常詳細,具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2021-08-08
  • feign服務(wù)端發(fā)現(xiàn)異??蛻舳颂幚淼姆椒ń榻B

    feign服務(wù)端發(fā)現(xiàn)異常客戶端處理的方法介紹

    這篇文章主要給大家介紹了關(guān)于feign服務(wù)端發(fā)現(xiàn)異??蛻舳颂幚淼姆椒ǎ闹型ㄟ^示例代碼介紹的非常詳細,對大家學習或者使用feign具有一定的參考學習價值,需要的朋友們下面來一起學習學習吧
    2019-07-07
  • SpringBoot應(yīng)用能直接運行java -jar的原因分析

    SpringBoot應(yīng)用能直接運行java -jar的原因分析

    這篇文章主要介紹了SpringBoot應(yīng)用為什么能直接運行java -jar,首先明確一點,普通jar包是不能直接運行的,比如工具類jar,要能運行,至少得要一個main函數(shù)作為入口吧?本文給大家介紹了詳細的原因分析,需要的朋友可以參考下
    2024-03-03

最新評論