java.sql.Date java.util.Date String 之間的轉換


項目中,java.sql.Date、java.util.Date和String三者之間要經常進行轉換。下面是我寫的轉換代碼,有不對的還請多多指教。

 1 import java.text.ParseException;
 2 import java.text.SimpleDateFormat;
 3 import java.util.Date;
 4 
 5 /**
 6  * java.util.Date
 7  * 1、就是在除了SQL語句的情況下面使用;是 java.sql.Date 的父類;
 8  * 2、是常用的表示時間的類,我們通常格式化或者得到當前時間都是用它。
 9  * 
10  * java.sql.Date
11  * 1、是針對SQL語句使用的,它只包含日期而沒有時間部分;
12  * 2、讀寫數據庫的時候用它,因為PreparedStament的setDate()的第2參數和ResultSet的getDate()方法的第2個參數都是java.sql.Date。 
13  *
14  */
15 public class TestUtilAndSqlDate {
16     public static void main(String[] args) {
17         //java.util.date java.sql.date 之間的轉換
18         Date date = new Date();
19         System.out.println("java.util.date***"+date.toString());
20         java.sql.Date  sqlDate = new java.sql.Date(date.getTime());
21         System.out.println("java.sql.date***"+sqlDate.toString());
22         
23         Date date2 = new Date(sqlDate.getTime());
24         System.out.println("java.util.date***"+date2);
25         
26         //String  java.util.date 之間的轉換
27         SimpleDateFormat sdf1 = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
28         String formatUtilDate = sdf1.format(date);
29         System.out.println("formatUtilDate***"+formatUtilDate);
30         
31         try {
32             Date parseUtilDate = sdf1.parse(formatUtilDate);
33             System.out.println("parseUtilDate***"+parseUtilDate);
34         } catch (ParseException e) {
35             e.printStackTrace();
36         }
37         
38         SimpleDateFormat sdf2 = new SimpleDateFormat("yyyyMMdd");
39         String formatUtilDate2 = sdf2.format(date);
40         System.out.println("formatUtilDate2***"+formatUtilDate2);
41         
42         try {
43             Date parseUtilDate2 = sdf2.parse(formatUtilDate2);
44             System.out.println("parseUtilDate2***"+parseUtilDate2);
45         } catch (ParseException e) {
46             e.printStackTrace();
47         }
48         
49         
50         //String java.sql.Date 之間的轉換 
51         //String 轉 sql.date 可以用valueOf方法;sql.date轉String需要用到 util.Date的getTime()方法
52         String formatSqlDate = "2013-05-09";
53         java.sql.Date valueOf = java.sql.Date.valueOf(formatSqlDate);
54         System.out.println("valueOf***"+valueOf);
55         
56 //        String formatSqlDate2 = "20130509";//String 格式錯誤 應為 yyyy-MM-dd
57 //        java.sql.Date valueOf2 = java.sql.Date.valueOf(formatSqlDate2);
58 //        System.out.println("valueOf2***"+valueOf2);
59         
60         java.sql.Date newSqlDate = new java.sql.Date(new Date().getTime());
61         System.out.println("sqlDateToString***"+newSqlDate.toString());
62         
63     }
64 }

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM