我需要通過查詢數據庫來獲取員工的姓名。 似乎需要一個班級。但是隻有一種方法的課程......這是個好主意,還是你有其他建議?通過他的ID獲取員工的姓名。那麼一個靜態類只有一個方法?
0
A
回答
1
如果這是唯一的信息塊,你需要了解員工,那麼,你只需要一個靜態方法的靜態類:
public static class EmployeeRepository {
public static string GetEmployeeNameByID(int id) { ... }
}
當您需要更多,你可以做更多。
0
也許我正在回答錯誤的問題,但我不禁想到,也許你應該看看這個用ID加載整個員工記錄的方式,而不僅僅是獲取名稱。如果是這樣,那麼最簡單的方法是在僱員類中有一個靜態方法來做到這一點。
1
每個表/實體類型有一個類是合理的。 我想這個類將被稱爲DAO類。
如果該類現在只有一種方法,那也沒有問題。 您可以稍後添加更多內容。
儘管如此,不需要靜態方法。
具體而言,您可能希望將其設置爲常規類(帶有實例),以便您可以注入依賴項,例如DataSource或Connection。
public class EmployeeDAO {
private final DataSource ds;
public EmployeeDAO(DataSource ds){
this.ds = ds;
}
public String getEmployeeNameByID(int id) { ... }
}
1
請勿使用靜態類。當你想使用交易或特定連接時會發生什麼?將交易或連接對象快速傳遞給每個呼叫變成一種痛苦。
最好使用一個普通的舊類,以後可以擴展。靜態類可能導致擁有靜態變量的誘惑,這可能會導致錯誤。我個人喜歡避免這種情況。
我已經加入此作爲蒂洛的答案,如果我有足夠的代表:(
相關問題
- 1. 如何通過他的ID獲取每個用戶的姓名?
- 2. 從一個普通的靜態方法獲取類的名字在Java中
- 3. 如何從一個子類的靜態方法獲取類?
- 4. Java - 只有一個類的實例:使用靜態方法?
- 5. 從其他類中的一個類獲取非靜態值
- 6. 爲什麼一個類允許自己擁有一個靜態成員,但不是一個非靜態成員?
- 7. 有同名類靜態方法作爲另一個類
- 8. 在一個控制器中通過Id方法獲取多個
- 9. 爲什麼靜態庫有一個init方法的類?
- 10. 只調用一個實例的類的靜態方法
- 11. 從單一的表有兩個不同的員工ID在一個單一的存儲過程中選擇兩個員工姓名
- 12. 創建一個ID靜態成員變量來跟蹤類ID
- 13. 獲取一個靜態方法調用類Python中
- 14. PHP - 類中的靜態方法或只是一個函數
- 15. 只導入一個類的靜態方法
- 16. 如果一個類沒有狀態,那麼所有的方法都應該是靜態的嗎?
- 17. 創建一個從靜態工廠方法工廠,然後調用靜態工廠方法上的ID
- 18. 測試一類具有一個靜態類/方法依賴
- 19. 靜態方法可能只對一類
- 20. 獲取靜態方法內的非靜態方法名稱
- 21. findViewById一個靜態方法
- 22. 調用一個通用的靜態類方法php
- 23. 從另一個類,非靜態調用一個類和方法
- 24. 只有靜態方法的類模塊
- 25. 什麼是靜態類與只有靜態方法的類之間的區別?
- 26. 調用synchronized靜態方法,那麼可以訪問其他靜態方法嗎?
- 27. 聲明一個類的靜態成員一個頭文件
- 28. 我有一個非靜態方法
- 29. 在非靜態類中聲明一個靜態方法的意義是什麼?
- 30. 如何編寫一個靜態類,該靜態類有一個帶有字符串的ID
如果他想要比名字更多的是評論,他可能會這麼說。 – 2009-07-13 04:31:50