jdbc增刪改查操作數據庫及jdbcUtil工具包

jdbc增刪改查操作數據庫
jdbcUtil工具包

package JDBC;

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


/**
 * JDBC工具類  (通常將方法設置爲靜態方法,不然還要通過new 一個對象來調用方法,不優雅,類加載時即加載)
 * 1.獲取連接方法
 * 2.關閉釋放jdbc使用的資源
 * */
public class JDBCUtil {
    private static Connection connection;
    private static String url; //= "jdbc:mysql://"+ ip + ":" + port +"/"+  mysqldatabase
    //遠程訪問mysql數據庫權限用戶的用戶名和密碼
    private  static String username = "root";//用戶名通常爲root
    private  static String password = "";//密碼通常空
    //服務器ip,數據庫訪問端口port,數據庫名稱mysqldatabase
    private static String ip = "192.168.43.160";
    private static int port = 3306;//數據庫訪問端口號通常爲3306
    //數據庫名稱
    private static String mysqldatabase = "test";
    private static PreparedStatement ps;
    private static Statement stmt;

    /**1.
     * 獲取jdbc連接的方法getconnection (通過JDBCUtil.getConnection()來獲取一個JDBC的連接)
     * ip 爲數據庫所在的遠程服務器的ip地址
     * port 爲數據庫訪問的端口
     * mysqldatabase  要連接的數據庫名稱
     * */
   // public static Connection getConnection(String ip,String mysqldatabase){
    public static Connection getConnection(){
        try {
                //1加載驅動
                Class.forName("com.mysql.jdbc.Driver");
                //String url = "jdbc:mysql://ip:port/數據庫名稱";(port通常是3306,ip需輸入,數據庫名稱需輸入,用戶名密碼爲PHPMyAdmin的進入密碼)
               //2.獲取連接,url爲jdbc連接:連接的mysql,服務器ip+數據庫的名稱   再由驅動管理者獲取連接(url,username,password)
                url = "jdbc:mysql://"+ ip + ":" + port +"/"+  mysqldatabase;
                return connection = DriverManager.getConnection(url, username, password);
            } catch (Exception e) {//捕捉所有的異常
                e.printStackTrace();
            }
            return null;
    }


    /**2.
     * 關閉,釋放資源的方法close (若不存在使用下列資源,傳遞參數爲null即可,通過JDBCUtil.close()關閉資源)
     * rs 爲結果集,通過JDBC查到的結果集,使用後需關閉釋放資源
     * ps stmt 爲開啓的sql語句
     * connection 爲jdbc的連接
     * */
    public static void close(ResultSet rs, PreparedStatement ps,Statement stmt,Connection connection){//棧式關閉(最先連接,最後關閉連接)
        try{//關閉結果集
            if(rs!=null) rs.close();
        }catch (SQLException e){
            e.printStackTrace();
        }

        try{//關閉sql語句
            if(ps!=null) ps.close();
            if(stmt!=null) stmt.close();
        }catch (SQLException e){
            e.printStackTrace();
        }

        try{//關閉連接
            if(connection!=null) connection.close();
        }catch (SQLException e){
            e.printStackTrace();
        }

    }


}


發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章