有什麼方法可以獲得Java Bean字段的Object數組?我有一些代表數據庫表(Hibernate)的bean類,我需要從它們中檢索jtable模型的對象數組,但似乎唯一的方法是通過爲每個類的每個字段調用getXXX方法 - 很多要做的工作。來自Java Bean字段的對象數組
0
A
回答
4
如果你想要一個通用的方式來從bean中提取值,你應該看看introspection(package「java.lang.reflect」)。
這是一個基本的例子:
Field[] fields = ABeanClass.getDeclaredFields();
Object[] values = new Object[fields.length];
int i = 0;
for (Field field : fields) {
values[i] = field.get(beanInstance);
i++;
}
+0
沒有時間去嘗試,但似乎是一個很好的解決方案。當我嘗試這個時,我會回答。 – user1091733 2012-04-09 12:48:18
0
我做到這一點是使用「控制器」類處理所有模型和數據庫之間的通信方式。
您製作「對象」列表,例如private List myList = null; 現在,在控制器類中編寫一個通用方法。說getList返回列表。將相對類傳遞給方法,並使用hibernate會話返回列表。在你的豆,這樣做
myList = myController.getList(YourBean.class);
而這應該是你的getlist方法。
public List getList(Class c) throws BaseExceptionHandler {
Session session = null;
Transaction tx = null;
String query = null;
List list = null;
try {
query = getStringQuery(c);
if (query != null) {
session = sessFactory.openSession();
tx = session.beginTransaction();
list = (List) session.createQuery(query).list();
tx.commit();
}
} finally {
if (session != null) {
session.close();
}
}
return list;
}
CHEERS :)
+0
我想你可能會誤解我的問題。我想獲得Bean的字段的對象數組,而不是由hibernate返回的對象的對象數組。 – user1091733 2012-04-09 12:47:17
相關問題
- 1. 連接來自Java對象數組的字段
- 2. 來自對象字段的字典鍵
- 3. 使用來自Bean對象的JSON構造數組
- 4. 來自數組的MySQL UPDATE字段名與來自數組的字段值
- 5. 來自數組對象的GEt數據
- 6. 從對象數組中獲取對象數組的字段值
- 7. 來自java數據庫的Json對象
- 8. 來自Rails數組的文本字段
- 9. 匹配來自數組對象的值
- 10. 來自回調函數的訪問對象的字段
- 11. 存儲具有多個字段的對象的Java數組
- 12. 高級自定義字段 - 來自一個字段數組中的一個字段組的所有字段?
- 13. 來自數據庫的Java硬編碼字符串對象
- 14. 如何訪問NSMutable數組中的自定義對象字段?
- 15. Java:對象字段賦值
- 16. 自定義Java對象數組
- 17. 對象數組來自Ajax的彈簧控制器字符串
- 18. 顯示來自對象的字符數組
- 19. 獲取對象的數組中的一個字段的數組包含字段
- 20. Java對象數組
- 21. 對象數組-java-
- 22. 比較嵌套對象字段來數組列表中Javasacript/Lodash
- 23. 多字段索引對象數組
- 24. 具有字段和子對象數組的對象的JavaScript數組?
- 25. 在Java中按字段分組計數對象
- 26. 按對象中數字字段對數組進行排序
- 27. 與來自JSON對象未知類型檢索字段的值中的Java
- 28. 將約束添加到來自Java列表的第一個對象的字段
- 29. Xpages bean vs對象數據
- 30. 在兩個字段上排序自定義對象數組
您是否嘗試過寫你自己的方法這一點。我認爲你可以編寫泛型方法,並從一個方法調用中獲取所有實體。 – mbaydar 2012-04-07 20:03:43