3.3项目准备
首先我们可以设置一个项目名称:DAOPrject,并且因为此项目需要使用Oracle数据库,需要配置好数据库的驱动程序。请保证数据库已经打开监听与实例服务。
为了进行程序的统一管理,所有的项目的父包名称统一设置为:cn.***。(我现在是cn.cute)而子包需要根据不同的功能模块进行划分。
3.3.1 数据库链接类
本次的操作既然要进开发,那么就必须进行数据库的链接与关闭,那么几乎所有的数据库的连接操作都是固定的步骤,那么就可以单独定义一个DatabaseConnection类,这个类主要负责数据库链接对象的取得以及数据库的关闭操作。既然是一个专门用于数据库的链接操作,那么我们可以将其保存在dbj子包中。
有两个操作的功能:
1.取得链接对象:
get Conncetion() :Conncetion
2:close:
close() : void
可以存放一些常量:数据库的据动程序
DBDRIVER = "com.mysql.cj.jdbc.Driver";
DBURL = "jdbc:mysql://120.27.241.196:33063/liu";
USER = "root";
PASSWORD = "123456";
举个栗子:定义数据库的连接类:
public class DatabaseConnection {
//本类专门负责数据库的连接与关闭操作,在实例化本类对象时就意味着要进行数据库的开发,所以在本类的构造方法里进行数据驱动加载与数据库连接取得
private static String DBDRIVER = "com.mysql.cj.jdbc.Driver";
private static String DBURL = "jdbc:mysql://120.27.241.196:33063/liu";
private static String USER = "root";
private static String PASSWORD = "123456";
//在构造方法里面为conn对象进行实例化,可以直接获得数据库的连接对象
Connection conn = null;
DatabaseConnection() {
try {
Class.forName(DBDRIVER);
this.conn = DriverManager.getConnection(DBURL, USER, PASSWORD);
}catch (Exception e){//此处有异常,但抛出的意义不大,注意自己看报错
e.printStackTrace();
}
}
public Connection getConn{
return this.conn;//取得一个数据库的链接对象
}
//负责数据库的关闭
public void close(){
if (this.conn != null){//表示现在存在链接对象
try{
this.conn.close();
}catch (SQLException e){ e.printStackTrace(); }
}
}
}
整个操作过程中,DatabaseConnection,而至于说有多少个线程需要找到此类需要链接对象,他都不关心。从最早的DAO设计模式来讲实际上还会考虑到一个问题,多数据库间的一直问题,需要设置一个专门的表示连接的接口。