領測軟件測試網
%YR-Iuev(c
int x = 0;
while (rs.next()) {
buff.append(++x + ": ");
buff.append(rs.getString(1));
buff.append("\n");
}
if(buff.length() > 0){
retValue = buff.toString();
}else{
retValue = "Widget doesn't exist in system";
}
} catch (SQLException e1) {
e1.printStackTrace();
} finally {
try {rs.close();} catch (Exception e3) {}
try {stmt.close();} catch (Exception e4) {}
try {con.close();} catch (Exception e5) {}
}
return retValue;
}
AA,T ?.ym
w軟件測試技術網Q{9L7_o@%WZ
t*]
x
q*K清單 2 中的代碼出現了問題,尤其是它通過一個硬編碼的 SQL 語句直接與一個硬編碼的數據庫進行通信。Yeeesh! 您能夠想像開發人員測試這種 GUI 和相關數據庫的挑戰嗎(順便說一下,測試本應該簡單得像測試一個 Web 頁面一樣)? 倘若對數據庫的任何改動都將 影響到 GUI,那么要考慮修改系統的話會使情況變得更糟。
R*E({/w?9@(G
 |
DAO 模式 -Gb9HC;yBData Access Object (DAO) 是一種設計模式,它旨在使用接口和相關實現把低級的數據訪問操作從高級事務邏輯中分離出來。從本質上說,某個具體的 DAO 類通過特定的數據源實現訪問數據的邏輯。DAO 模式使得只使用一個接口為多個數據庫,或者甚至各種不同的數據源(如文件系統)定義多個具體實現成為了可能。 | |
軟件測試技術網W3C"NA1O9a9K4V-[轉變為松散耦合!
3H/DC9Vz
老湿亚洲永久精品ww47香蕉图片_日韩欧美中文字幕北美法律_国产AV永久无码天堂影院_久久婷婷综合色丁香五月