Java JDBC數據庫簡單使用,封裝鏈接,關閉

使用DBUtil類,封裝兩個靜態方法,一個獲得鏈接方法,一個關閉鏈接方法,以MySQL爲例:java

import java.sql.*;

public class DBUtil {

//建立鏈接

    public static Connection get_conn(){

        String url = "jdbc:mysql://localhost/JDBC?useSSL=false";

        String user = "root";

        String password = "root";

        Connection conn = null;

        try {

            Class.forName("com.mysql.cj.jdbc.Driver");

            conn = DriverManager.getConnection(url, user, password);

        } catch (ClassNotFoundException e) {

            e.printStackTrace();

        } catch (SQLException e) {

            e.printStackTrace();

        }

        return conn;

    }

//關閉鏈接

    public static void close_conn(Connection conn, Statement st, PreparedStatement pst){

        if (conn != null){

            try {

                conn.close();

            } catch (SQLException e) {

                e.printStackTrace();

            }

        }

        if (st != null){

            try {

                st.close();

            } catch (SQLException e) {

                e.printStackTrace();

            }

        }

        if (pst != null){

            try {

                pst.close();

            } catch (SQLException e) {

                e.printStackTrace();

            }

        }

    }

}

使用JDBC_test進行測試數據庫操做:

import java.sql.Connection;

import java.sql.PreparedStatement;

import java.sql.ResultSet;

import java.sql.SQLException;

public class JDBC_test {

    public static void main(String[] args) {

        Connection conn = DBUtil.get_conn();

        PreparedStatement pst = null;

        ResultSet re = null;

        try {

            String sql = "insert into person values('李志', '25', '南京')";

            pst = conn.prepareStatement(sql);

            pst.execute();            

            String sql1 = "select * from person";

            pst = conn.prepareStatement(sql1);

            pst.execute();

            re = pst.executeQuery(sql1);

            while (re.next()){

                System.out.print("name:" + re.getString(1) + " age:" +re.getString(2) + " address:" + re.getString(3) +"\n");

            }

        } catch (SQLException e) {

            e.printStackTrace();

        }

        DBUtil.close_conn(conn, null, pst);

    }

}
複製代碼

針對數據庫鏈接操做封裝成類,須要數據庫操做直接經過類名來調用,在JDBC的各類語句執行中還有不少可優化的地方,你們不妨本身多研究一下。mysql

相關文章
相關標籤/搜索