JDBC_获取数据库连接
<span style="font-size:24px;">package src.com.jdbc.java; import java.io.IOException;
import java.io.InputStream;
import java.sql.DriverManager;
import java.sql.SQLException;
import java.util.Properties; import org.junit.Test; import com.mysql.jdbc.Connection;
import com.mysql.jdbc.Driver; public class JDBCTest {
@Test
public void testGetConnection2() throws Exception{
System.out.println(getConnection2());
}
public Connection getConnection2() throws Exception{
//1、准备连接数据库的四个字符
//1)、创建properties对象
Properties properties=new Properties(); //2)、获取jdbc.properties对象
InputStream in=this.getClass().getClassLoader().getResourceAsStream("jdbc.properties"); //3)、加载2)对应的输入流
properties.load(in);
//4)、具体决定user,passwrod等四个字符串
String user=properties.getProperty("user");
String password=properties.getProperty("password");
String jdbcUrl=properties.getProperty("jdbcUrl");
String driver=properties.getProperty("driver"); //2、加载数据库驱动程序(对应的 Driver 实现类中有注册驱动的静态代码块.)
Class.forName(driver);
//3、通过DriverManager的getConnection()方法获取数据库的连接。
return (Connection) DriverManager.getConnection(jdbcUrl,user,password);
}
/**
* DriverManager 是驱动的管理类.
* 1、可以通过重载的getconnection()方法获取连接,
* 2、可以同时管理多个驱动程序;注册了多个数据库连接,则调用getconnection()方法
* 时传入的参数不同,即返回不同的数据库连接
* @throws IOException
* @throws ClassNotFoundException
* @throws SQLException
*
*/
@Test
public void testDriverManager() throws Exception{
//1、准备连接数据库的四个字符
String driverClass = null;
String jdbcUrl = null;
String user = null;
String password = null;
// 读取类路径下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");
//2、加载数据库驱动程序(对应的 Driver 实现类中有注册驱动的静态代码块.)
Class.forName(driverClass);
//3、通过DriverManager的getConnection()方法获取数据库的连接。
Connection connection=(Connection) DriverManager.getConnection(jdbcUrl,user,password);
System.out.println(connection);
}
@Test
public void testDriver() throws SQLException {
Driver driver = new com.mysql.jdbc.Driver();
String url = "jdbc:mysql://127.0.0.1:3306/cjl";
Properties info = new Properties();
info.put("user", "root");
info.put("password", "root123");
Connection connection = (Connection) driver.connect(url, info);
System.out.println(connection); } /**
* 编写一个通用方法:把数据库驱动Driver实现类的全类名、URL、user、password放入
* 一个配置文件中,通过修改配置文件的方式实现和具体的数据库解偶
*
* @throws Exception
*/
public Connection getConnection() throws Exception {
String driverClass = null;
String jdbcUrl = null;
String user = null;
String password = null;
// 读取类路径下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 = (Driver) Class.forName(driverClass).newInstance(); Properties info = new Properties();
info.put("user", user);
info.put("password", password);
//通过Driver的connection方法获取数据库连接
Connection connection = (Connection) driver.connect(jdbcUrl, info);
return connection;
}
@Test
public void testGetConnection() throws Exception{
System.out.println(getConnection());
} }
</span>
jdbc.properties文件中的配置
driver=com.mysql.jdbc.Driver
jdbcUrl=jdbc:mysql://127.0.0.1:3306/cjl
user=root
password=root123
JDBC_获取数据库连接的更多相关文章
- <一>获取数据库连接
一.JDBC_通过Driver接口获取数据库连接 1. Driver是一个接口:数据库厂商必须提供实现的接口,可以从其中 获取数据库连接. 2.JDBC URL由三部分组成,各部分用冒号隔开,格式:j ...
- JAVA jdbc获取数据库连接
JDBC获取数据库连接的帮助类 import java.io.InputStream; import java.sql.Connection; import java.sql.DriverManage ...
- 使用DriverManager获取数据库连接的一个小改进
由于使用DriverManager获取数据库连接时,由于DriverManager实现类中有一段静态代码块,可以直接注册驱动,且可以同时管理多个驱动程序 所以当换数据库连接时需要指定不同的数据库,那么 ...
- 使用DriverManager获取数据库连接
DriverManager 是驱动的管理类 * 1).可以通过重载的getConnection() 方法获取数据库连接,较为方便 * 2).可以同时管理多个驱动程序,若注册了多个数据库连接,则调用ge ...
- 通过Driver获取数据库连接
先看一下文件,在当前包下有一个properties配置文件,在根目录下有一个lib文件夹,里面放的是mySql的驱动jar包 Driver :是一个接口,数据库厂商必须提供实现的接口,能从其中获取数据 ...
- 获取数据库连接对象Connection
2018-11-04 19:50:52 开始写 public Connection getConn() {//返回类型为Connection try { Class.forName("co ...
- JDBC编程:获取数据库连接
JDBC(Java Database Connectivity),即Java数据库连接.通过JDBC编程,可以使Java应用程序和数据库进行交互. JDBC驱动的方式有很多种,我们常用的驱动方式为:本 ...
- JDBC 学习笔记(四)—— JDBC 加载数据库驱动,获取数据库连接
1. 加载数据库驱动 通常来说,JDBC 使用 Class 类的 forName() 静态方法来加载驱动,需要输入数据库驱动代表的字符串. 例如: 加载 MySQL 驱动: Class.forName ...
- 获取数据库连接的方式 & Statement操作数据库的弊端
1.获取数据库连接的方式 TestConnection package com.aff.connection; import java.io.InputStream; import java.sql. ...
随机推荐
- C++面试经常涉及的概念1
1.new.delete.malloc.free关系 delete会调用对象的析构函数,和new对应.free只会释放内存,new调用构造函数.malloc与free是C++/C语言的标准库函数,ne ...
- Stitch Fix 融资1200万美元,又一个时尚创业的哈佛女MBA |华丽志
Stitch Fix 融资1200万美元,又一个时尚创业的哈佛女MBA |华丽志 Stitch Fix 融资1200万美元,又一个时尚创业的哈佛女MBA
- ExpandableListView(三)只展开一个group,没有child不展开group
本文是自己在实践中,发现的问题. 有时候想让界面更加的人性化,就要实现很多的效果,比如只展开一个group,在点击下个group的同时,关闭之前的group 在一个ExpandableListView ...
- kbengine Unity3d demo 代码执行流程(4)
当服务端成功启动,客户端链接服务端后进入demo中的游戏界面,demo中的功能包括注册.登录.角色管理.战斗.场景等等. 对于新接触kbengine的人,看见客户端的代码后会觉得很迷茫,有些无从下手. ...
- 汉诺塔 python版
汉诺塔问题:如果将n个盘子(由小到大)从a通过b,搬到c,搬运过程中不能出现小盘子在大盘子下面的情况. 思路分析:假设前要移动第100个盘子,分两步走,移动第99个:再移动第100个:而要移动第99个 ...
- 使用Xib添加自定义View
1.新建Cocoa Touch Class以及UI View,2者同名 2.设置UI View的File's Owner——Custom Class为之前新建类 3.设置Xib中View与类关联 4. ...
- iOS中的地图和定位
文章摘自http://www.cnblogs.com/kenshincui/p/4125570.html#location 如有侵权,请联系删除. 概览 现在很多社交.电商.团购应用都引入了地图和定 ...
- ExtJs004define定义类
Ext.onReady(function () { //在Ext中如何去定义一个类: Ext.define(className , properties , callback) Ext.define( ...
- EasyUI的使用步骤
(1) 将easyui-1.4.3中jquery.min.js\jquery.easyui.min.js复制到工程的script下 (2) 将themes复制到工程中 (3) 在页面中引入2个JS 2 ...
- AWT和Swing
布局分类 一.流式布局 二.边界布局 三.网格布局 四.卡片布局 五.坐标式布局 随意布置控件位置. 六.混合布局