3、数据库连接类

首先可以设置一个项目名称:DAOProject,并且由于此项目需要使用数据库,需要为其配置好驱动程序。

请保证数据库已经打开监听与实例化服务。

右键项目->属性,添加数据库的驱动


为了方便进行程序的统一管理,所有项目的父包名称统一设置为:cn.mldn。而子包要根据不同的功能模块进行划分。

数据库连接类

本次的操作既然要对数据库进行开发,那么就必须进行数据库的连接取得与关闭才可以正常操作,那么几乎所有的数据库的连接操作都是固定的步骤,那么定义一个DatabaseConnection类,这个类主要负责数据库的连接对象取得以及关闭的操作。既然是一个专门用于数据库的连接操作,那么可以将其保存dbc子包中。


范例:定义数据库的连接类

Database.Connection.java

```

package cn.mldn.dbc;

import java.sql.DriverManager;

import java.sql.SQLException;

import com.mysql.jdbc.Connection;

/**

*

* @author Joker

* 本类专门负责数据库的连接与关闭操作,在实例化本类对象时就意味着要进行数据库的开发

* 所以在本类的构造方法要进行数据库驱动加载与数据库连接取得

*/

public class DatabaseConnection {

private static final String DBDRIVER = "com.mysql.jdbc.Driver";

private static final String DBURL = "jdbc:mysql://localhost:3306/mysql1";

private static final String DBUSER = "root";

private static final String PASSWORD = "111111";

private Connection conn = null;

/**

* 在构造方法里面为conn对象进行实例化,可以直接取得数据库的连接对象

*

*/

public DatabaseConnection() {

try {

//JDBC规范要求Driver类在使用前必须向DriverManger注册自己。

//注册过程在Driver类的静态类已经实现。也就是说只要类被加载,就完成了向驱动管理器的注册。

Class.forName(DBDRIVER);

this.conn = (Connection) DriverManager.getConnection(DBURL,DBUSER,PASSWORD);

} catch(Exception e) {

e.printStackTrace();

}

}

/**

*

* 取得一个数据库的连接对象

* Connection实例化对象

*/

public Connection getConnection() {

return this.conn ;

}

/**

* 负责数据库的关闭

*/

public void close() {

if (this.conn != null) {

try {

this.conn.close();

} catch (SQLException e) {

e.printStackTrace();

}

}

}

}

```

整个的操作过程之中,DatabaseConnection只是无条件的提供有数据库连接,而至于说有多少个线程需要找到此类要连接对象,它都不关心。

额外话题:从最早的DAO设计模式来讲实际上还会考虑到一个问题,多数据库间的移植问题。

此时就需要设置一个专门的表示连接标准的接口。


考虑到现实的开发之中,所提供的第三方框架平台越来越完善,所以以上的复杂设计几乎就被慢慢忽略到了。

你可能感兴趣的:(3、数据库连接类)