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

来源:互联网 发布:衣橱顾问 知乎 编辑:程序博客网 时间:2024/05/20 18:17

由于配置文件输入出现点问题,读取配置文件部分代码已注释,但代码是正确的可运行成功
其中的四个变量
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());    }}
0 0