您的位置:首页 > 其它

JDBC中Date类型数据的插入

2014-07-23 22:45 387 查看
package com.mypractice.five;

import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.ResultSet;
import java.sql.SQLException;
import java.sql.Statement;

/**
*
* 2014.07.23
* @author zhutianpeng
* 使用单例建立JDBC工具类
*/
public class JDBCUtil {
private static String driver = "com.mysql.jdbc.Driver";
private static String url = "jdbc:mysql://localhost:3306/ww";
private static String root = "root";
private static String password = "sa";
private static JDBCUtil jdbcUtil = null;
private static Connection conn = null;
private JDBCUtil(){}

static{
try {
Class.forName(driver);

} catch (ClassNotFoundException e) {
System.out.println("【加载驱动失...】");
e.printStackTrace();

}
}
/**
*
* @return jdbcUtil
*
* 实现获取JDBCUtil工具类的对象
*/
public static JDBCUtil getInstance(){
if(jdbcUtil==null){
synchronized(JDBCUtil.class){
if(jdbcUtil==null){
jdbcUtil = new JDBCUtil();
}
}
}
return  jdbcUtil;
}
/**
*
* @return conn
*
* 获取数据库连接
*/
public Connection getConnection(){
try {
conn  = DriverManager.getConnection(url,root,password);
} catch (SQLException e) {
System.out.println("【获取连接失败...】");
e.printStackTrace();
}
return conn;
}

/**
*
* @param rs
* @param st
* @param conn
*
* 关闭数据库连接
*/
public void free(ResultSet rs,Statement st,Connection conn){
if(rs!=null){
try {
rs.close();
} catch (SQLException e) {
System.out.println("【ResultSet关闭失败...】");
e.printStackTrace();
}finally{
if(st!=null){
try {
st.close();
} catch (SQLException e) {
System.out.println("【Statement关闭失败...】");
e.printStackTrace();
}finally{
if(conn!=null){
try {
conn.close();
} catch (SQLException e) {
System.out.println("【Connection关闭失败...】");
e.printStackTrace();
}
}
}
}
}
}
}
}


package com.mypractice.five;

import java.sql.Connection;
import java.sql.PreparedStatement;
import java.sql.SQLException;
import java.util.Date;

public class DateTest {

/**
* @param args
* @throws SQLException
*/
public static void main(String[] args) throws SQLException {
create("zhutianpeng",new Date(1992-03-21),222F);
}
public static void create(String name,Date birthday,float money) throws SQLException{
Connection conn = JDBCUtil.getInstance().getConnection();
String sql = "insert into user(name,birthday,money)values(?,?,?)";
PreparedStatement ps = conn.prepareStatement(sql);
ps.setString(1,name);
ps.setDate(2,new java.sql.Date(birthday.getTime()));
ps.setFloat(3, money);
ps.executeUpdate();
}
}


注:

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

new java.sql.Date(birthday.getTime())


②sql中的Date类是继承至java.uti.Date类,也就是java.sql.Date类是java.util.Date的子类。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: