JDBC_使用Driver接口实现数据库的连接

由于配置文件输入出现点问题,读取配置文件部分代码已注释,但代码是正确的可运行成功
其中的四个变量
driverClass :驱动名
jdbcUrl: 数据库路径
user: 相应数据库的登陆账号
password:相应数据库的登陆密码

下面列出各个数据库厂商提供的驱动的连接代码

/*Oracle数据库连接/
数据库驱动程序名:
oracle.jdbc.dirver.OracleDriver
数据库连接地址:
jdbc:oracle:thin:@localhost:1521:orcl
//这里的orcl为数据库(SID实例名)

Microsoft SQL Server 2000:
数据库驱动程序名:
com.microsoft.jdbc.sqlserver.SQLServerDriver
数据库连接地址:jdbc:microsoft:sqlserver://localhost:1433;DatabaseName=db_name //db_name为数据库名

Microsoft SQL Server 2005:
数据库驱动程序名:
com.microsoft.sqlserver.jdbc.SQLServerDriver
数据库连接地址:
jdbc:sqlserver://localhost:1433;DatabaseName=db_name //db_name为数据库名

MySQL:
数据库驱动程序名:
com.mysql.jdbc.Driver

org.gjt.mm.mysql.Driver
数据库连接地址:
jdbc:mysql://localhost:3306/数据库名
mysql有几种,建议不懂的自己查>

/*Sybase数据库连接/

数据库驱动程序名:
base.jdbc.SybDriver
数据库连接地址:
jdbc:sybase:Tds:localhost:5007/erp
//erp为数据库名
Properties sysProps=System.getProperties();
sysProps.put(“user”,”sa”);//用户名
sysProps.put(“password”,”“);//密码
java.sql.Connection conn=DriverManager.getConnection(url,SysProps);

/*DB2数据库连接/

数据库驱动程序名:
com.ibm.db2.jdbc.app.DB2Driver
com.ibm.db2.jdbc.net.DB2Driver
数据库连接地址:
jdbc:db2://localhost:5000/数据库名
jdbc:db2://localhost:6789/数据库名

/*Sql Server数据库连接/
数据库驱动程序名:
com.microsoft.jdbc.sqlserver.SQLServerDriver
数据库连接地址:jdbc:microsoft:sqlserver://localhost:1433;DatabaseName=pubs
//pubs数据库名

Oracle(用thin模式):
数据库驱动程序名:
oracle.jdbc.driver.OracleDriver
//连接数据库的方法
数据库连接地址:
jdbc:oracle:this:@loaclhost:1521:orcl
//orcl为数据库的SID

本机安装的为oracle 因此本例测试代码为java连接oracle 数据库

代码如下:

package com.atchance.jdbc;

import java.io.InputStream;
import java.sql.Connection;
import java.sql.Driver;

import java.sql.ResultSet;

import java.sql.SQLException;

import java.sql.Statement;
import java.util.Properties;

import oracle.jdbc.*;

import oracle.jdbc.driver.*;

public class JDBCTest1 {

    /** * 通过Driver接口获取数据库连接 * 1.加入oracl驱动 (存放在classes12jar.zip中) * 2.解压classes12jar.zip * 3.在当前目录下新建lib目录 * 4.将classes12jar.zip.jar复制到lib目录下 * 5.右键build path -> add bulidpath 加入到类中 * @chance */
    /** * 编写一个通用的方法,在不改变源程序的情况下,可以获取任何数据库的连接 * 解决方案:把数据库驱动Driver 实现类的全类名 url, user ,password 全部放在一个配置文件中 * 通过修改配置文件来实现和各种数据库的解耦 * @throws Exception */

    public Connection getConnection() throws Exception{

        String driverClass = "oracle.jdbc.driver.OracleDriver";
        String jdbcUrl = "jdbc:oracle:thin:@localhost:1521:ORCL";
        String user = "scott";
        String password = "tiger";

        //读取类路径下的jdbc.properties文件

// InputStream in = getClass().getClassLoader.getResourceAsStream("jdbc.properties");
// Properties properties = new Properties();
// properties.load(in);
// driverClass = properties.getProperty("driver");
// jdbcUrl = properties.getProperty("jdbcUrl");
// user = properties.getProperty("user");
// password = properties.getProperty("password");

        Driver driver = (Driver)Class.forName(driverClass).newInstance();

        Properties info = new Properties();
        info.put("user", user);
        info.put("password", password);
        Connection connection = driver.connect(jdbcUrl,info);
        return connection;
    }

    public static void main(String[] arg) throws Exception{
        JDBCTest1 t1 = new JDBCTest1();
        System.out.println(t1.getConnection());
    }
}

你可能感兴趣的:(oracle,jdbc)