jdbc连接mysql驱动方式_jdbc连接mysql的五种方式

public void testConnection1() throws SQLException {

// 获取Driver的实现类对象

Driver driver = new com.mysql.jdbc.Driver();// 第三方的api;

String url = "jdbc:mysql://localhost:3306/test";

// 将用户名和密码封装在Properties里

Properties info = new Properties();

// 连接数据库的用户名和密码

info.setProperty("userName", "root");

info.setProperty("password", "abc123");

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

System.out.println(conn);

}

// 方法二:对方法一的迭代,在如下程序不出现第三方的api,使得程序具有可移植性

public void testConnection2() throws ClassNotFoundException, InstantiationException, IllegalAccessException {

// 1.获取Driver实现类的对象,使用反射

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

Driver driver = (Driver) clazz.newInstance();

// 提供要连接的数据库跟方法一一致

}

// 方法三:使用DriverManager替换Driver

public void testConnection3() throws SQLException, InstantiationException, IllegalAccessException, ClassNotFoundException {

// 1.获取Driver的实现类对象

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

Driver driver = (Driver) clazz.newInstance();

// 2.获取连接的基本信息

String url = "";

String user = "";

String password = "";

// 3.注册驱动

DriverManager.registerDriver(driver);

// 4.获取连接

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

}

// 方法四:可以只是加在驱动而不用显示注册驱动

public void testConnection4() throws SQLException, InstantiationException, IllegalAccessException, ClassNotFoundException {

// 2.获取连接的基本信息

String url = "";

String user = "";

String password = "";

// 1.获取Driver的实现类对象

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

// 为什么省略注册驱动,因为在加载Driver类时执行的静态块已经执行了注册驱动

// Driver driver = (Driver) clazz.newInstance();

// // 3.注册驱动

// DriverManager.registerDriver(driver);

// 4.获取连接

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

}

// 方法五(final version):将数据库连接需要的四个基本信息声明在配置文件中,通过读取配置文件的方式获取连接(建议用这种方式)

/*

* 此方法的好处 1.实现了数据库和代码的分离。实现了解耦 2.如果需要修改配置文件的信息,就可避免了程序重新打包(编译)

*/

public void testConnection5() throws IOException, ClassNotFoundException, SQLException {

// 1.读取配置文件中的四个基本信息

InputStream inStream = ConnectionTest.class.getClassLoader().getResourceAsStream("jdbc.properties");

Properties pro = new Properties();

pro.load(inStream);

String url = pro.getProperty("url");

String user = pro.getProperty("user");

String password = pro.getProperty("password");

String diverClass = pro.getProperty("diverClass");

// 2.加载驱动

Class.forName(diverClass);

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

}

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值