三种方式得到代表与数据库连接的Connection对象

package cn.gp.test.jdbc;

 

import java.sql.Connection;

import java.sql.Driver;

import java.sql.DriverManager;

import java.sql.SQLException;

import java.util.Properties;

 

import org.junit.Test;

 

/*

 * 实现得到代表与数据库连接的Connection类 三种方式

 */

public class TestConnection {

@Test

public void testGetConnectionOne(){

try {

//创建mysql的Driver实现类,去实现java.sql.Driver;

Driver driver=new com.mysql.jdbc.Driver();

 

String url="jdbc:mysql://127.0.0.1:3306/db_jdbc";//定位数据库

Properties info = new Properties();//存储用户信息,key固定

info.put("user", "root");//用户名

info.put("password", "123");//密码

 

//获得代表与数据库连接的 实现类对象。

Connection connect = driver.connect(url, info);

 

System.out.println(connect);

} catch (SQLException e) {

e.printStackTrace();

}

}

 

@Test

public void testGetConnectionTwo(){

try {

//创建驱动管理器,用管理器注册一个驱动

DriverManager.registerDriver(new com.mysql.jdbc.Driver());

 

//定位数据库

String url="jdbc:mysql://127.0.0.1:3306/db_jdbc";

//用户名

String user="root";

//密码

String password="123";

//使用驱动管理器获得代表与数据库连接的 实现类对象。

Connection connection = DriverManager.getConnection(url, user, password);

 

System.out.println(connection);

} catch (SQLException e) {

e.printStackTrace();

}

}

 

@Test

public void testGetConnectionThree(){

try {

/**

* 因为new com.mysql.jdbc.Driver,

* 这个类会static一次

* java.sql.DriverManager.registerDriver(new Driver());

* 所以这里我们用反射,没有new新的Driver,同时也

* 调用了com.mysql.jdbc.Driver的

* java.sql.DriverManager.registerDriver(new Driver());

*/

Class.forName("com.mysql.jdbc.Driver");

} catch (ClassNotFoundException e) {

e.printStackTrace();

}

 

//定位数据库

String url="jdbc:mysql://127.0.0.1:3306/db_jdbc";

//用户名

String user="root";

//密码

String password="123";

//使用驱动管理器获得代表与数据库连接的 实现类对象。

try {

Connection connection = DriverManager.getConnection(url, user, password);

 

System.out.println(connection);

} catch (SQLException e) {

// TODO Auto-generated catch block

e.printStackTrace();

}

 

}

}

 

你可能感兴趣的:(java,mysql,数据库,jdbc,Conntection)