一:电子宠物的DAO分层
1.cn.jbit.epet.dao //与数据库连接,对表增删改查的标准模板
{
1)BaseDao
2)MasterDao-interface
3)PetDao-interface
4)PetTypeDao-interface
}
2.cn.jbit.epet.dao.impl//继承BaseDao和接口,实例化增删改查--SQL的拼接
{
1)MasterDaoSQLServerImpl
2)PetDaoSQLServerImpl
3)PetTypeSQLServerImpl
}
3 cn.jbit.epet.entity//类的声明
{
1)Master
2)Pet
3)PetTypeManager
}
4 cn.jbit.epet.manager //流程实现
{
1)MasterManager
2)PetTypeManager
}
5 cn.jbit.epet.test
Test.java
二:Dao 包内的SQL模板分析
/**
* 增、删、改的操作
* @param sql 预编译的 SQL 语句
* @param param 预编译的 SQL 语句中的‘?’参数的字符串数组
* @return 影响的行数
*/
public int exceuteUpdate(String preparedSql, Object[] param) {
PreparedStatement pstmt = null;
int num = 0;
conn = getConnection();
try {
pstmt = conn.prepareStatement(preparedSql);
if (param != null) {
for (int i = 0; i < param.length; i++) {
pstmt.setObject(i + 1, param[i]); // 为预编译sql设置参数
}
}
num = pstmt.executeUpdate();
} catch (SQLException e) {
e.printStackTrace();
} finally{
closeAll(conn, pstmt, null);
}
return num;
}