2 回答
TA貢獻1828條經(jīng)驗 獲得超3個贊
你的類名DataDAO本身就暗示設(shè)計中有問題。更好地為不同的對象類型使用單獨的 DAO 類。例如CardDAO,UserAccountDAO等等。
你為什么要做這個方法static?我看不出有什么原因。我認為方法簽名可能是這樣的:
public List<Card> getCardsForUser(String userId)
請注意,我正在返回List而不是ArrayList.
由于您是學習者,因此我還將提及以下幾點:
避免在同一范圍內(nèi)使用多個名稱相似的變量。你有usersCards和cardsForUser在你的代碼中。這可能會令人困惑。對于ResultSet,您可以使用resultSet或之類的名稱rs。
遵循 Java 命名約定。因此,它比使用cardNew更好card_new。
TA貢獻1848條經(jīng)驗 獲得超6個贊
這種情況下的最佳實踐是為每種對象類型創(chuàng)建 DAO 類。
將所有內(nèi)容放在全局類中的負面影響是復(fù)雜性、可測試性和可讀性。
如果所有 DAO 都包含通用方法,則可以在所有 DAO 上使用通用接口。例如,您有 10 個對象類型(表),并且每個 DAO 都有創(chuàng)建R讀取更新D刪除方法。
您可以從 Spring Boot 框架中復(fù)制一些想法,其中此類 DAO 始終是每個對象類型一個,并且將類似的內(nèi)容合并到您的解決方案中:
https://docs.spring.io/spring-data/data-commons/docs/1.6.1.RELEASE/reference/html/repositories.html
添加回答
舉報
