日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 人文社科 > 生活经验 >内容正文

生活经验

java Date 和 数据库Date,DateTimed

發布時間:2023/11/27 生活经验 27 豆豆
生活随笔 收集整理的這篇文章主要介紹了 java Date 和 数据库Date,DateTimed 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

Java 向數據庫中輸入datetime類型數據

Java 可以使用jdbc訪問數據庫,我們通常使用的時間是java.utils.Date。后來嘗試使用java.sql.Date朝數據庫中寫入時間,發現了一個問題,這些寫入的時間,無一例外的沒有后面的小時等信息,只有年-月-日

java.sql.Date只表示數據庫中日期的部分如果想向數據庫中寫入完整的時間,如2016-12-11 17:10:25.000?則需要使用java.sql.Timestamp這個類。

下面,我給大家介紹下兩種東西的使用方法

字符串和java.utils.Date相互轉換

我們使用DateFormat 類來進行String和Date的轉換,而java.utils.Date是我們在java編程中經常使用的。

字符串轉化為Date類型

public void getDateTime() throws ParseException{String str = "2016-12-11 17:17:10"; //字符串格式的時間
        DateFormat dateFormat = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");//要轉換的時間格式java.util.Date date = dateFormat.parse(str);  //str 轉 DateSystem.out.println("Time of Date type:"+date);}

?

Date類型轉化為字符串

        //Date類型轉字符串public void getCurrentStrTime(){DateFormat dateFormat = new SimpleDateFormat("yyyy-MM-dd kk:mm:ss");   // 這里填寫的是想要進行轉換的時間格式java.util.Date date = new java.util.Date();      // 獲取當前時間String str = dateFormat.format(date);  //Date 轉換為 strSystem.out.println("Time of String type: "+str);}        

?

?

Java.sql.Date向數據庫寫入日期(年-月-日)

這里就需要java.sql.Date和java.utils.Date進行相互轉換了,這個轉換一般比較容易,利用構造方法和.getTime()?方法進行轉化。

java.utils.Date date = new java.utils.Date();   // 獲取當前時間
java.sql.Date sql_date = new java.sql.Date(date.getTime()); //轉換成java.sql.Date
接著使用PreparedStatement 向數據庫中寫入時間,即可。ps.setDate(1, new java.sql.Date(date.getTime()));   // 設置項

Java.sql.Timestamp向數據庫中寫入時間(年-月-日? 時:分:秒)

需要注意的是,上邊一種方法只能將日期寫入到數據庫中,為了能夠將時間精確到s甚至是ms。我們需要使用java.sql.Timestamp 類型。 
java.sql.Timestamp 類型的構造函數也可以使用Long進行初始化Date date = new Date();  
Timestamp timeStamp = new Timestamp(date.getTime());  故在生成java.utils.Date時,將時間精確到s,然后使用預編譯語句執行SQL語句Date date = new Date();  
Timestamp timeStamp = new Timestamp(date.getTime()); sql= "insert into flowmeter2(total,std_flow,temp,press,time) values(?,?,?,?,?)";   try {  PreparedStatement ps = connection.prepareStatement(sql);  ps.setString(1, total);  ps.setString(2, std_flow);  ps.setString(3, temp);  ps.setString(4, press);  ps.setTimestamp(5, timeStamp);  ps.executeUpdate();  System.out.println("添加成功!");  connection.close();  
便可以將時間精確到ms級

?

轉載于:https://www.cnblogs.com/Thomas-blog/p/9277124.html

總結

以上是生活随笔為你收集整理的java Date 和 数据库Date,DateTimed的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。