jdbc连接数据库(oracle、mysql)
阅读原文时间:2023年07月09日阅读:2

很简单,直接贴代码吧!代码注释自认为足够理解!

第一步创建数据库连接类,数据库连接地址、数据库驱动、用户名、密码建议创建为公共变量,方便修改,一目了然

package db;

import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.SQLException;

/**
* jdbc连接数据库以及关闭数据库
* 加载驱动 创建链接即可
* oracle 所需jar包
* ojdbc14.jar commons-collections.jar
*
* mysql 所需jar包
* mysql-connector-java-5.1.7-bin.jar
* @author 乔成强
* @version 创建时间:2018年5月9日 下午2:26:00
*/
public class DBConnection {

/\*\*Oracle数据库连接地址\*/  
private final static String DB\_URL = "jdbc:oracle:thin:@192.168.2.158:1521:orcl";  
/\*\*Oracle数据库连接驱动\*/  
private final static String DB\_DRIVER = "oracle.jdbc.driver.OracleDriver";  
/\*\*Oracle数据库用户名\*/  
private final static String DB\_USER = "protransfer";  
/\*\*Oracle数据库用户密码\*/  
private final static String DB\_PASS = "protransfer";

/\*\*  
 \* 以下为mysql的连接方式  
 \*/  
//private final static String DB\_URL = "jdbc:mysql://127.0.0.1:3306/qcq";  
//private final static String DB\_DRIVER = "com.mysql.jdbc.Driver";  
//private final static String DB\_USER = "root";  
//private final static String DB\_PASS = "root";

/\*\*  
 \* 创建连接  
 \*/  
public Connection getConnetion(){  
    Connection con = null;  
    try {  
        Class.forName(DB\_DRIVER);  //加载驱动  
        con = DriverManager.getConnection(DB\_URL, DB\_USER, DB\_PASS);  //创建连接  
    } catch (ClassNotFoundException e) {  
        e.printStackTrace();  
    } catch (SQLException e) {  
        e.printStackTrace();  
    }  
    return con;  
}

/\*\*  
 \* 关闭数据库连接  
 \*/  
public void closeConn(Connection conn){  
    if(conn != null){  //首先判断是非为空  
        try {  
            if(!conn.isClosed()){  //如果数据库连接没有关闭,在进行关闭  
                conn.close();  //通过close()关闭数据库  
            }  
        } catch (SQLException e) {  
            e.printStackTrace();  
        }  
    }  
}

}

第二步建立一个数据库连接工厂类(可有可无),不在需要每次都实例化了

package db;

import java.sql.Connection;

/**
* 创建一个数据库连接的工厂类,就不用每次使用数据库连接时再进行实例化
* @author 乔成强
* @version 创建时间:2018年5月9日 下午2:27:16
*/
public class DBFactory {

private static DBConnection dbConn = new DBConnection();  //实例化数据库连接对象

/\*\*  
 \* 获取数据库对象  
 \*/  
public static DBConnection getDBConnectionInstanse(){  
    if(dbConn == null){  
        dbConn = new DBConnection();  
        return dbConn;  
    }else{  
        return dbConn;  
    }  
}

/\*\*  
 \* 关闭数据库连接  
 \*/  
public static void closeConn(Connection conn){  
    if(dbConn == null){  
        dbConn = new DBConnection();  
    }  
    dbConn.closeConn(conn);  //调用关闭连接的方法  
}

}

第三步就是一个测试类了

package db;

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

/**
* 测试数据库是否能够连接成功
* @author 乔成强
* @version 创建时间:2018年5月9日 下午2:41:08
*/
public class testDB {

public static void main(String\[\] args) {  
    Connection con = DBFactory.getDBConnectionInstanse().getConnetion();  
    Statement sta;  
    try {  
        sta = con.createStatement();  
        String sql = "select \* from t\_sys\_user where id = 1";  
        ResultSet rs = sta.executeQuery(sql);  
        while(rs.next()){  
            System.out.println(rs.getString(3));  //从1开始的  
            System.out.println(rs.getString("id"));  //也可以通过名字获取值(就是数据库中的各个字段)  
        }  
    } catch (SQLException e) {  
        // TODO Auto-generated catch block  
        e.printStackTrace();  
    }

    try {  
        con.close();  //关闭数据库  
    } catch (SQLException e) {  
        // TODO Auto-generated catch block  
        e.printStackTrace();  
    }  
}

}

好了,这样基本就可以了!!!