需要在存儲到Riak時支持Scala列表和選項。看起來傑克遜的Scala模塊會爲此工作。然而,它將如何被鉤入Riak中的對象映射器?不知道我是否需要重寫某些內容或是否有可以輕鬆解決的註釋。如何在Riak-Java中註冊Scala Jackson模塊?
https://github.com/FasterXML/jackson-module-scala
需要在存儲到Riak時支持Scala列表和選項。看起來傑克遜的Scala模塊會爲此工作。然而,它將如何被鉤入Riak中的對象映射器?不知道我是否需要重寫某些內容或是否有可以輕鬆解決的註釋。如何在Riak-Java中註冊Scala Jackson模塊?
https://github.com/FasterXML/jackson-module-scala
幾個版本前,我加入了getObjectMapper()
方法將JSONConverter
有人曾要求它。這是用於訪存/存儲操作的Converter
,如果您正在傳入POJO並且尚未創建並通過自己的傳入。
你會想自己實例化JSONConverter
並獲得ObjectMapper
從中:
JsonConverter<MyClass> converter = new JSONConverter<MyClass>(MyClass.class, bucketName);
ObjectMapper om = converter.getObjectMapper();
現在,您可以用ObjectMapper
註冊模塊,然後使用JSONConverter
與讀取/存儲操作(使用withConverter()
方法StoreObject
和FetchObject
)。
我想這就是你要找的。如果你需要更多的控制序列化/反序列化你的對象,你也可以編寫你自己的Converter
- 我已經寫了一個關於這個主題的食譜入口:https://github.com/basho/riak-java-client/wiki/Using-a-custom-Converter
非常感謝。我正在烹飪一個無處不在的定製分支。這也將在新的烹飪書籍維基? – crockpotveggies 2013-03-06 17:18:38
其實,從頭開始,也許我可以自己更新文檔(在用Scala完成課程之後)。 :) – crockpotveggies 2013-03-06 17:33:23
當然,它在'JSONConverter'的Javadoc中。實際上有人在github上打開了一個問題,他們要求添加一個將ObjectMapper作爲參數的構造函數。同樣的結果,但不笨重。只是沒有得到它的優先事項。如果你想寫一些特定的食譜scala,我很樂意添加它。 – 2013-03-06 18:52:05