關於Dao分層理解與例子詳解--個人記錄
阿新 • • 發佈:2019-01-11
一:電子寵物的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; }