您的位置:首页 > 数据库

注册jdbc驱动程序的三种方式

2013-08-27 22:04 501 查看
http://blog.163.com/gaoyun_lu/blog/static/614070212011112535529217/

1、比较常用

try{

       Class.forName("com.mysql.jdbc.Driver");//加载数据库驱动

       String url="jdbc:mysql://localhost:3306/databasename";//数据库连接子协议

       Connection conn=DriverManager.getConnection(url,"username","password");

       Statement stmt=conn.createStatement();

       ResultSet rs=stmt.executeQuery("select * from tablename");

       while(rs.next()){//不断指向下一条记录

            System.out.println("DeptNo:"+rs.getInt(1));

            System.out.println("\tDeptName:"+rs.getString(2));

            System.out.println("\tLOC:"+rs.getString(3));

}         

    rs.close();

    stmt.close();

    conn.close();

}catch(ClassNotFoundException e){

   System.out.println("找不到指定的驱动程序类!");

}catch(SQLException e){

    e.printStackTrace();

}

2、通过系统的属性设置

try{

       System.setProperty("jdbc.driver","com.mysql.jdbc.Driver");//系统属性指定数据库驱动

       String url="jdbc:mysql://localhost:3306/databasename";//数据库连接子协议

       Connection conn=DriverManager.getConnection(url,"username","password");

       Statement stmt=conn.createStatement();

       ResultSet rs=stmt.executeQuery("select * from tablename");

       while(rs.next()){//不断指向下一条记录

            System.out.println("DeptNo:"+rs.getInt(1));

            System.out.println("\tDeptName:"+rs.getString(2));

            System.out.println("\tLOC:"+rs.getString(3));

}         

    rs.close();

    stmt.close();

    conn.close();

}catch(SQLException e){

    e.printStackTrace();

}

//方法2的思想:http://blog.sina.com.cn/s/blog_7598036901016fcd.html

在方法2中:我们首先System.setProperty("jdbc.driver","com.mysql.jdbc.Driver");把我们需要的jdbc驱动程序添加到了jdbc.drivers系统属性中(在这里我们可以同时添加多个驱动程序,用:号隔开即可),再调用DriverManager.getConnection方法获取连接时系统实际是在DriverManager的静态方法loadInitialDrivers方法中加载我们第一行中注册的驱动程序,并向DriverManager注册的!

loadInitialDrivers方法中加载并初始华系统属性中配置的驱动程序!使用下列语句:

                Class.forName(driver,true,ClassLoader.getSystemClassLoader());
即方法1和方法2都是调用Class.forName()加载数据库驱动com.mysql.jdbc.Driver。

Class.forName

在Class.forName中,http://blog.sina.com.cn/s/blog_823ecaee0100uawr.html

com.mysql.jdbc.Driver的静态语句块中:java.sql.DriverManager.registerDriver(new Driver());实现了注册。

3、看起来比较直观的一种方式,注册相应的db的jdbc驱动,3在编译时需要导入对应的lib

try{

       new com.mysql.jdbc.Driver();//创建driver对象,加载数据库驱动

       String url="jdbc:mysql://localhost:3306/databasename";//数据库连接子协议

       Connection conn=DriverManager.getConnection(url,"username","password");

       Statement stmt=conn.createStatement();

       ResultSet rs=stmt.executeQuery("select * from tablename");

       while(rs.next()){//不断指向下一条记录

            System.out.println("DeptNo:"+rs.getInt(1));

方法3和方法1没有多少区别。只是加载数据库驱动的方法不同。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  数据库