我有一個哈希表Map<String, String>
已下面的值,請注意點表示層次:春天 - Java的地圖HashMap來多層POJO的
+--------------------+-----------+
| Key | Value |
+--------------------+-----------+
| car.color | blue |
| car.engine.make | mitsubishi|
| car.engine.power | 120 |
+--------------------+-----------+
我POJO類:
public class Vehicle {
private Car car;
**Setters and Getters Below*
}
public class Car {
private String color;
private Engine engine;
**Setters and Getters Below*
}
public class Engine {
private String make;
private Integer power;
**Setters and Getters Below**
}
有沒有什麼辦法可以將HashMap映射到基於層次結構的POJO類中?我試圖用傑克遜ObjectMapper mapper = new ObjectMapper();
,但它似乎能夠映射1級別的對象。
你們是不是要避免手動建立的對象? –
是的,我可以做到這一點,通過使用開關的情況下,並做'case「car.engine.make」然後將其設置在對象',但開關代碼將變得冗長,如果我有很多值在地圖 – hades
沒有開關的情況下,您只需構建一次映射類,直接請求字符串並將它們轉儲到正確的位置即可。除非你在地圖上討論超過200個字符串,否則它很可能是最有效的方法嗎?在另一個說明中,用hasmap之外的其他方法表示數據是否更好,以便更好地維護該結構以開始或不可能? –