2015-10-01 52 views

回答

1

JSON序列化程序不是由JAX-RS指定的,它取決於您的配置。例如,新澤西JAX-RS允許多個(https://jersey.java.net/documentation/latest/media.html),包括

  • MOXY
  • 爲JSON處理(JSON-P)
  • 傑克遜的Java API
  • 拋棄

但更好的解決方案是不要使用Optional(Guava或Java 8)作爲字段。請參閱http://blog.joda.org/2014/11/optional-in-java-se-8.html

我唯一的擔心是可選將被過度使用。請注意使用 它作爲返回類型(從執行一些有用的 功能的方法)請不要將其用作Java Bean的字段。

+0

謝謝,我配置了Jackson Guava模塊,現在它工作正常。我已經閱讀過你之前提到過的文章,但對於API表示類中的字段不是「可選的」嗎?實現我的客戶的人將有一個明確的跡象表明,某些字段爲空(如錯誤代碼)關於使用可選的這樣 – birnbaum

+1

也與此有關(與布賴恩戈茨的響應,甚至):http://stackoverflow.com/questions/26327957/should-java-8-getters-return-optional-type – VGR

0

不直接解決你的問題。我建議你使用Googles Gson作爲解析器。它非常靈活和可配置。

Tutorial

它還跳過空白的領域,因此JSON尺寸不是太大。

+0

謝謝,但我正在使用已經與傑克遜一起使用的Dropwizard – birnbaum