Java关闭数据库资源的两种方式

来源:互联网 发布:linux lost found 编辑:程序博客网 时间:2024/05/16 15:07

第一种:

_______________________________________________________________________________

package jdbc;import java.sql.Connection;import java.sql.DriverManager;import java.sql.SQLException;import java.sql.Statement;/** * 关闭资源的常用操作一 * @author Joey */public class JDBC_Test1 {    private static String url = "jdbc:mysql://127.0.0.1:3306/study?characterEncoding=UTF-8";    private static String userName = "root";    private static String passWord = "joey";    public static void main(String[] args) {        Connection connection=null;        Statement statement=null;        String sql=null;        try {            Class.forName("com.mysql.jdbc.Driver");            connection = DriverManager.getConnection(url, userName, passWord);            statement = connection.createStatement();            sql = "insert into employee values(null," + "'Jack" + "'" + ",'jack@gmail.com'" + ",'5000')";            statement.execute(sql);            System.out.println("OK");        } catch (ClassNotFoundException e) {            e.printStackTrace();        } catch (SQLException e) {            e.printStackTrace();        } finally {            // 关闭资源            if (statement!=null) {                try {                    statement.close();                } catch (Exception e) {                    e.printStackTrace();                }            }            if (connection!=null) {                try {                    statement.close();                } catch (Exception e) {                    e.printStackTrace();                }            }        }    }}



第二种:

_______________________________________________________________________________

package jdbc;import java.sql.Connection;import java.sql.DriverManager;import java.sql.SQLException;import java.sql.Statement;/** * 关闭资源的常用操作二 * try-with-resource * @author Joey */public class JDBC_Test2 {    private static String url = "jdbc:mysql://127.0.0.1:3306/study?characterEncoding=UTF-8";    private static String userName = "root";    private static String passWord = "joey";    public static void main(String[] args) {        try {            Class.forName("com.mysql.jdbc.Driver");        } catch (ClassNotFoundException e) {            e.printStackTrace();        }        // 将资源声明在try()中,当语句结束,资源将被关闭        try (Connection connection = DriverManager.getConnection(url, userName, passWord);                Statement statement = connection.createStatement();) {            String sql = "insert into employee values(null," + "'Tom" + "'" + ",'tom@gmail.com'" + ",'5000')";            statement.execute(sql);            System.out.println("OK");        } catch (SQLException e) {            e.printStackTrace();        }    }}


原创粉丝点击