jdbc工具类(3)——模板类中用到接口
DAO接口:
package daoUtil;
import java.sql.SQLException;
import java.util.Collection;
public interface DAO {
/**
* 数据库更新操作
* @param sql 更新操作sql语句
* @param args sql语句参数值数组
* @return 更新记录条数
* @throws SQLException
*/
public int update(String sql,Object args[])throws SQLException;
/**
* 数据库删除操作
* @param sql 删除操作sql语句
* @param args 删除操作sql语句参数值数组
* @return 删除记录条数
* @throws SQLException
*/
public int delete(String sql,Object args[])throws SQLException;
/**
* 数据库查询操作
* @param sql 查询操作sql语句
* @param args 删除操作sql语句数组数值
* @return 结果对象
* @throws SQLException
*/
public Object find(String sql,Object args[],RowMapper rowMapper)throws SQLException;
/**
* 根据数据库表名,找到该表中所有记录数
* @param tableName 要查询的表
* @return 表中记录数
* @throws SQLException
*/
public int getRecordCount(String tableName)throws SQLException;
/**
* 数据库插入操作
* @param sql 插入操作 sql语句
* @param args 插入数
* @param primaryIndex 主键在sql语句中位置(小于-1表示用数据自动生成主键不需要插入)
* @return 插入记录数
* @throws SQLException
*/
public int insert(String sql,Object args[],int primaryKeyIndex,PrimaryKeyer primaryKeyer)throws SQLException;
/**
* 查找符合条件所有记录
* @param sql 查询sql语句
* @param args 查询参数
* @return Collection 记录集
* @throws SQLException
*/
public Collection ObjectList(String sql,Object args[],RowMapper rowMapper)throws SQLException;
}主键生成方式接口:
package daoUtil;
import java.sql.SQLException;
public interface PrimaryKeyer {
public Object getPrimaryKey()throws SQLException;
}行映射器接口:
package daoUtil;
import java.sql.ResultSet;
import java.sql.SQLException;
public interface RowMapper {
public Object rowMapping(ResultSet rs)throws SQLException;
}