3
對於原始java.util.Map是否存在像this這樣的「對象散列映射」?原始Java Map的對象散列映射(將POJO映射到映射中)
的基本思想可以(通常是註釋)「地圖」定製類存儲在一個原始地圖:
Map<String,String> map = new HashMap<String,String>();
Class car = new Car(1, "Red");
Ohm ohm = new Ohm(map); // set the back-end map to use.
Car result = ohm.put(car); // persist annotated class
result = ohm.get(1); // get by id
result = ohm.get("color", "Red"); // get by property query
一個原因,我問這個是因爲我已經開發了一個庫,有效地映射到GAE Datastore
原始Map
接口:
Map<String, String> map = Datastorecast.getMap("somemap");
反正我已經就如何實現它的思維,而無需重新發明輪子:
- 使用谷歌GSON或JSON.Simple序列化對象到java.util.Map
- 序列化的另外一個選擇是XStream的
- 該從那裏得到的地圖複製到數據存儲支持的地圖容器
更新:
我意識到的技術來實現這一(Redis的風格):
Class car = new Car(1, "Red");
map.put("classname:com.mycompany.Car:uid:", car.getId());
map.put("classname:com.mycompany.Car:color:", car.getColor());
- 所以它只是一個註釋類的問題,以便OHM類可以反映要放入地圖的值。
謝謝,但看着它,看起來仍然是一個地圖界面。我實際上已經有一個持久化映射(帶有一個java.util.Map接口),我實際上正在尋找的是將POJO「映射」爲一組Map或其他類似的東西。 – xybrek 2013-04-09 05:51:51
查看我更新的問題 – xybrek 2013-04-09 05:56:08