問題陳述的屬性:走過Java中的複雜對象圖,並得到索引(類似於XPath的)
想象像下面嵌套對象:
class Company{
...
List<Department> departments;
}
class Department{
...
List<Employee> employees;
}
class Employee{
String name;
...
}
一個公司有很多部門,每個部門都有很多員工。
Json正文由一個庫解組,以創建Java對象公司,如上所示。
假設我有一個名字爲「John」的僱員,我正在尋找一個api,當我傳入Employee對象的哈希或屬性名稱時,會返回該屬性的路徑。
搜索(對象的attributeName,對象的AttributeValue),即搜索( 「名」, 「約翰」)應該返回 company.departments [0] .employees [5]
是否有一個良好的開源庫暴露相似api或什麼是最好的方法走過一個複雜的對象圖
JSR 303 Hibernate Validator,它將屬性路徑自動添加到ConstraintViolation不會公開它通過任何方式從複雜對象圖獲取屬性路徑的行爲對象
如果有人跑了,請多多指教通過類似的需求
你後來用這個結果'company.departments [0] .employees [5]'會做什麼?只能以文本形式打印或以某種方式迭代它或別的? –
我只是需要它的文本形式,這將是我想發回給用戶的一些額外的元數據。 用例是我們有自定義業務邏輯,我們向用戶返回400的錯誤請求,我們希望將路徑發送回深層嵌套對象圖中的屬性,我們相信這裏存在字段不匹配或發送的值不正確 – hackmabrain