JDBC的方法封装

1 , 工具类封装

package com.testJDBC;

import java.io.Closeable;
import java.io.IOException;
import java.sql.DriverManager;
import java.sql.PreparedStatement;
import java.sql.ResultSet;
import java.sql.SQLException;
import java.util.Properties;
import java.sql.Statement;

import com.mysql.jdbc.Connection;

public class JDBCUtil {
	// 初始化设置properties对象
	static Properties pros = null;
	// 加载类的同时执行初始化快的内容
	{
		pros = new Properties();
		try {
			//加载配置文件的属性
			pros.load(Thread.currentThread().getContextClassLoader().getResourceAsStream("db.properties"));
		} catch (IOException e) {
			// TODO Auto-generated catch block
			e.printStackTrace();
		}
	}
	
	// 获取Connection
	public static Connection getConnection() {
		try {
			Class.forName("com.mysql.jdbc.Driver");
			return (Connection) DriverManager.getConnection(
					"jdbc:mysql://localhost:3306/testjdbc?useUnicode=true&characterEncoding=utf-8&useSSL=false",
					"root",
					"wangrong654688");
		} catch (Exception e) {
			// TODO Auto-generated catch block
			e.printStackTrace();
			return null;
		}
		
	}
	// 关闭
	public static void close(ResultSet rs,PreparedStatement ps,Connection conn) {
		try {
			if(rs!=null) {
			rs.close();
			}
		} catch (SQLException e) {
			// TODO Auto-generated catch block
			e.printStackTrace();
		}
		
		try {
			if(ps!=null) {
			ps.close();
			}
		} catch (SQLException e) {
			// TODO Auto-generated catch block
			e.printStackTrace();
		}
		try {
			if(conn!=null) {
			conn.close();
			}
		} catch (SQLException e) {
			// TODO Auto-generated catch block
			e.printStackTrace();
		}
	}
	public static void close(PreparedStatement ps,Connection conn) {
		
		try {
			if(ps!=null) {
			ps.close();
			}
		} catch (SQLException e) {
			// TODO Auto-generated catch block
			e.printStackTrace();
		}
		try {
			if(conn!=null) {
			conn.close();
			}
		} catch (SQLException e) {
			// TODO Auto-generated catch block
			e.printStackTrace();
		}
	}
	public static void close(Statement sm,Connection conn) {
		
		try {
			if(sm!=null) {
			sm.close();
			}
		} catch (SQLException e) {
			// TODO Auto-generated catch block
			e.printStackTrace();
		}
		try {
			if(conn!=null) {
			conn.close();
			}
		} catch (SQLException e) {
			// TODO Auto-generated catch block
			e.printStackTrace();
		}
	}
}

2, .properties 配置的封装 

driver=com.mysql.jdbc.Driver
JDBCUrl=jdbc:mysql://localhost:3306/testjdbc?useUnicode=true&characterEncoding=utf-8&useSSL=false
user=root
psw=wangrong654688

3, 正常替换运行

package com.testJDBC;

import java.sql.Date;
import java.sql.DriverManager;
import java.sql.PreparedStatement;
import java.sql.ResultSet;
import java.sql.SQLException;
import java.sql.Statement;

import com.mysql.jdbc.Connection;
import com.mysql.jdbc.Driver;

public class Test1 {
	public static void main(String[] args) {
		Connection conn = null;
			Statement sm = null; // 此处的Statement 是接口 不是实现类;
		
			try {
				 conn = JDBCUtil.getConnection();
				 conn.setAutoCommit(false);
				 sm = conn.createStatement();
				 
				for(int i=0;i<100;i++) { // 批量操作
					sm.addBatch("insert into t_user(username,pwd,resTime) value('leon"+i+"',123456,now())");
				}
				sm.executeBatch();
				 conn.commit();  // 最后一次提交
				System.out.println("成功");
			} catch (SQLException e) {
				e.printStackTrace();
				// TODO: handle exception
			}finally { // 关闭原则 先进后关
				JDBCUtil.close(sm, conn);
				
			}	
	}

}

发布了189 篇原创文章 · 获赞 10 · 访问量 6万+

猜你喜欢

转载自blog.csdn.net/wangrong111222/article/details/104084573