开发收获(3)之规范的JDBC写法

来源:互联网 发布:手机电影软件 编辑:程序博客网 时间:2024/04/28 16:36
首先在建个DbUtil文件,里面返回Connection、关闭方法等,如下所示:
import java.sql.Connection;import java.sql.DriverManager;import java.sql.ResultSet;import java.sql.SQLException;import java.sql.Statement;/** * 数据库工具类(获取连接、释放资源) *  * @author YUSHIBUJUE *  */public abstract class DbUtil {// 只需要执行一次static{try {System.out.println("注册数据库驱动......");Class.forName("com.mysql.jdbc.Driver");} catch (ClassNotFoundException e) {throw new RuntimeException("注册数据库驱动出现异常:"+e.getMessage());}}/** * 获取一个连接对象 * @return */public static Connection getConn() {String url = "jdbc:mysql://localhost/flightsystem?characterEncoding=GBK";try {return DriverManager.getConnection(url, "root", "root");} catch (SQLException ex1) {throw new RuntimeException("无法获取连接,原因:"+ex1.getMessage());}}public static void free(ResultSet rs, Statement st, Connection conn) {try {if (null != rs) {rs.close();System.out.println("ResultSet已关闭!");}} catch (SQLException e) {throw new RuntimeException("关闭ResultSet出现异常:" + e.getMessage());} finally {try {if (null != st) {st.close();System.out.println("Statement已关闭!");}} catch (SQLException e) {throw new RuntimeException("关闭Statement出现异常:" + e.getMessage());} finally {if (null != conn) {try {conn.close();System.out.println("Connection已关闭!");} catch (SQLException e) {throw new RuntimeException("关闭Connection出现异常:"+ e.getMessage());}}}}}}



接着在使用JDBC的地方,调用free(),如下:


原创粉丝点击