_016_java_JDBC中Date类型数据的插入

来自https://blog.csdn.net/zhu7478848/article/details/38071783,感谢作者的无私分享。

  1. package com.mypractice.five;  
  2.   
  3. import java.sql.Connection;  
  4. import java.sql.DriverManager;  
  5. import java.sql.ResultSet;  
  6. import java.sql.SQLException;  
  7. import java.sql.Statement;  
  8.   
  9. /** 
  10.  *  
  11.  * 2014.07.23 
  12.  * @author zhutianpeng 
  13.  * 使用单例建立JDBC工具类 
  14.  */  
  15. public class JDBCUtil {  
  16.     private static String driver = "com.mysql.jdbc.Driver";  
  17.     private static String url = "jdbc:mysql://localhost:3306/ww";  
  18.     private static String root = "root";  
  19.     private static String password = "sa";  
  20.     private static JDBCUtil jdbcUtil = ;  
  21.     private static Connection conn = ;  
  22.     private JDBCUtil(){}  
  23.       
  24.     static{  
  25.         try {  
  26.             Class.forName(driver);  
  27.               
  28.         } catch (ClassNotFoundException e) {  
  29.             System.out.println("【加载驱动失...】");  
  30.             e.printStackTrace();  
  31.               
  32.         }  
  33.     }  
  34.     /** 
  35.      *  
  36.      * @return jdbcUtil 
  37.      *  
  38.      * 实现获取JDBCUtil工具类的对象 
  39.      */  
  40.     public static JDBCUtil getInstance(){  
  41.         if(jdbcUtil==){  
  42.             synchronized(JDBCUtil.class){  
  43.                 if(jdbcUtil==){  
  44.                     jdbcUtil = new JDBCUtil();  
  45.                 }  
  46.             }  
  47.         }  
  48.         return  jdbcUtil;  
  49.     }  
  50.     /** 
  51.      *  
  52.      * @return conn 
  53.      *  
  54.      * 获取数据库连接 
  55.      */  
  56.     public Connection getConnection(){  
  57.         try {  
  58.             conn  = DriverManager.getConnection(url,root,password);  
  59.         } catch (SQLException e) {  
  60.             System.out.println("【获取连接失败...】");  
  61.             e.printStackTrace();  
  62.         }  
  63.         return conn;  
  64.     }  
  65.       
  66.     /** 
  67.      *  
  68.      * @param rs 
  69.      * @param st 
  70.      * @param conn 
  71.      *  
  72.      * 关闭数据库连接 
  73.      */  
  74.     public void free(ResultSet rs,Statement st,Connection conn){  
  75.         if(rs!=){  
  76.             try {  
  77.                 rs.close();  
  78.             } catch (SQLException e) {  
  79.                 System.out.println("【ResultSet关闭失败...】");  
  80.                 e.printStackTrace();  
  81.             }finally{  
  82.                 if(st!=){  
  83.                     try {  
  84.                         st.close();  
  85.                     } catch (SQLException e) {  
  86.                         System.out.println("【Statement关闭失败...】");  
  87.                         e.printStackTrace();  
  88.                     }finally{  
  89.                         if(conn!=){  
  90.                             try {  
  91.                                 conn.close();  
  92.                             } catch (SQLException e) {  
  93.                                 System.out.println("【Connection关闭失败...】");  
  94.                                 e.printStackTrace();  
  95.                             }  
  96.                         }  
  97.                     }  
  98.                 }  
  99.             }  
  100.         }  
  101.     }  
  102. }  



[java]  view plain  copy
  1. package com.mypractice.five;  
  2.   
  3. import java.sql.Connection;  
  4. import java.sql.PreparedStatement;  
  5. import java.sql.SQLException;  
  6. import java.util.Date;  
  7.   
  8. public class DateTest {  
  9.   
  10.     /** 
  11.      * @param args 
  12.      * @throws SQLException  
  13.      */  
  14.     public static void main(String[] args) throws SQLException {  
  15.         create("zhutianpeng",new Date(1992-03-21),222F);  
  16.     }  
  17.     public static void create(String name,Date birthday,float money) throws SQLException{  
  18.         Connection conn = JDBCUtil.getInstance().getConnection();  
  19.         String sql = "insert into user(name,birthday,money)values(?,?,?)";  
  20.         PreparedStatement ps = conn.prepareStatement(sql);  
  21.         ps.setString(1,name);  
  22.         ps.setDate(2,new java.sql.Date(birthday.getTime()));  
  23.         ps.setFloat(3, money);  
  24.         ps.executeUpdate();  
  25.     }  
  26. }  

注:

     ①一定要将Java的util包中的Date类型转换至Java.sql.Date类型

[java]  view plain  copy
  1. new java.sql.Date(birthday.getTime())  

    ②sql中的Date类是继承至java.uti.Date类,也就是java.sql.Date类是java.util.Date的子类。


猜你喜欢

转载自blog.csdn.net/poiuyppp/article/details/80792937
今日推荐