Dao设计模式一般都是用来获取数据源 获取数据连接 释放资源
第一步 定义一个接口
/**
* 定义所有操作数据库的Dao都用到的方法
*
* @author Administrator
*
*/
public interface Dao {
/**
* 获取到数据连接
* @return
*/
Connection getConnection();
/**
* 获取数据源
* @return
*/
DataSource getDataSource();
/**
* 释放资源
* @param rs
* @param stmt
* @param conn
*/
void release(ResultSet rs, Statement stmt, Connection conn);
}
第二步 写一个类叫做BaseDao
public class BaseDao implements Dao
{
@Override
public Connection getConnection() {
System.out.println("获取链接");
return null;
}
@Override
public DataSource getDataSource() {
System.out.println("获取数据源 ");
return null;
}
@Override
public void release(ResultSet rs, Statement stmt, Connection conn) {
System.out.println("释放资源");
}
}
第三步:现在有一个UserDao 需要和数据库打交道 我们可以这样做 先定义UserDao的接口
public interface UserDao {
void addUser();
void deleteUser();
}
第四步: 写一个UserDao的实现 继承于 baseDao 实现UserDao接口
public class UserImpl extends BaseDao implements UserDao
{
@Override
public void addUser() {
// TODO Auto-generated method stub
}
@Override
public void deleteUser() {
// TODO Auto-generated method stub
//获取数据源
Connection conn= getConnection();
//释放连接
release(rs, stmt, conn);
}
}
后面要使用 的每个Dao 都实现于自己业务的接口 继承于BaseDao 这就是Dao模式