java Date 和 数据库Date,DateTimed
生活随笔
收集整理的這篇文章主要介紹了
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的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 求一个qq网名中年女人。
- 下一篇: 不孕不育几率多少