JDBC连接数据库

时间:2022-05-23 19:06:15
**JDBC连接数据库**

连接数据库一般需要四个步骤:

导入JDBC包: 添加import语句到Java程序导入所需的类在Java代码中。

注册JDBC驱动程序:这一步会导致JVM加载所需的驱动程序实现到内存中,因此它可以实现JDBC请求。

数据库URL制定:这是创建格式正确的地址指向到要连接的数据库。

创建连接对象:这里有两种方式。

JDBC的连接数据库的两种方式:

(1)JDBC通过Driver连接数据库
(2)JDBC通过DriverManager连接数据库

首先需要加入mysql驱动

1)解压mysql-connector-java-5.1.7.zip
2)在当前项目下新建lib目录
3)把mysql-connector-java-5.1.7-bin.jar复制到lib目录下
4)右键build-path,add to buildpath加入到类路径下

(1)通过Driver连接数据库

1)创建Driver实现类的对象
Driver driver=new com.mysql.jdbc.Driver();
2)准备连接数据库的基本信息:url/user/password
String url="jdbc:mysql://localhost:3306/test";
Properties info=new Properties();
info.put("user","root");
info.put("password","");
3)调用Driver接口的connect(url,info)获取数据库连接
Connection connection=driver.connect(url,info);

以上方法虽能实现连接,但不够灵活,耦合度太高

编写一个通用的方法,在不修改源程序的情况下,可以获取任何数据库的连接
解决方案:把数据库驱动Driver实现类的全类名、url、user、password放入一个配置文件中,
通过修改配置文件的方式实现和具体数据库的连接在根目录下建立一个配置文件jdbc.properties,
将所需信息写入:
driver= com.mysql.jdbc.Driver
jdbcUrl=jdbc:mysql://localhost:3306/test
user=root;
password=;
String driverClass=null;
String jdbcUrl=null;
String user=null;
String password=null;

//读取配置文件
InputStream in=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).newIstance();
Properties info=new Properties();
info.put("user",user);
info.put("password",password);
Connection connection=driver.connect(jdbcUrl,info);

(2)JDBC通过DriverManager连接数据库

DriverManager是驱动的管理类
1)可以通过重载的getConnection()方法获取数据库连接,更方便
2)可以同时管理多个驱动程序:若注册了多个数据库连接,
则调用getConnection()方法是传入的参数不同即返回不同的数据库连接
1.准备数据库连接的4个字符串
//驱动的全类名
String driverClass=null;
//JDBC URL
String jdbcUrl=null;
String user=null;
String password=null;

//读取配置文件
InputStream in=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.加载数据库驱动
Class.forName(driverClass);
3.通过DriverManager的getConnection()方法获取数据库连接
Connection connection=DriverManager.getConnection(jdbcUrl,user,password);

下面是常见的JDBC驱动程序名和数据库的URL
(http://img.blog.csdn.net/20160820155043450)