2013-09-23 71 views
3

我讀有關Java API對JSON的處理,在ths site.指定然而,當我嘗試測試像這樣的代碼:如何在Java項目中使用Java EE API?

JsonReader reader = Json.createReader(new FileInputStream(...)); 

我不能,原因既不JsonReader類或Json類不能從任何地方進口。我只從sun.org.mozilla.javascript.internal.json.JsonParser獲得一些JsonParser課程,但顯然這不是我想要獲得的。

我安裝了Java EE,並且正在使用Java EE版本的Netbeans。我如何抓住這些功能?

回答

2

這裏是的JSR-000353

https://java.net/projects/jsonp/downloads/directory/ri

如果使用JSON我推薦的傑克遜JSON庫的參考實現的jar下載頁面。

http://wiki.fasterxml.com/JacksonHome

的jar文件可以在這裏找到:

http://wiki.fasterxml.com/JacksonDownload

有關在實現的差異更多信息,請參見該問題 Differentiating the Jersey, Jackson, and JaxB APIs

+0

那麼,它是Java EE版本的一部分,它不應該從核心庫到達嗎? – diegoaguilar

+1

是的,如果你安裝了完整的EE庫。該庫將在那裏,但如果您不想包含完整的JAX-RS庫,只需使用這組jar即可。如果你願意,我可以查找它所在的罐子。 –

+0

是的,請問我在哪裏可以找到它。而且,這些庫只能在類似EE的項目下實現?不在簡單的Java應用程序下? – diegoaguilar

1

JSR 353與一起發佈Java EE 7平臺。的JSONObject和JsonReader API可以通過兩種不同的方式使用:

  • 使用Java EE 7兼容的應用服務器,如GlassFish 4。在這種情況下,API內置於運行時,並且會爲您正確解析。您可以使用NetBeans,Eclipse或IntelliJ,並且如果服務器運行時配置正確,那麼它就可以工作。

  • 或者,您可以從http://jcp.org/aboutJava/communityprocess/final/jsr353/index.html下載參考實現,並將您的應用程序或您選擇的容器集成在一起。

使用此API的一組樣本可在https://github.com/arun-gupta/javaee7-samples/tree/master/json獲得。