码迷,mamicode.com
首页 > 数据库 > 详细

jdbc连接mysql的五种方式

时间:2020-07-15 16:02:46      阅读:100      评论:0      收藏:0      [点我收藏+]

标签:获取   读取配置   oid   string   host   打包   throws   version   getc   


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);
}

jdbc连接mysql的五种方式

标签:获取   读取配置   oid   string   host   打包   throws   version   getc   

原文地址:https://www.cnblogs.com/zr961224/p/13304881.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!