抱歉我的英语有限。
我有一个JSON从POST请求发送到我的Spring控制器。
我需要将这个JSON解析为一个数组。我怎么能这样做?
谢谢!
答案 0 :(得分:0)
有很多库可以解析json。请查看http://www.json.org/java/以考虑您的选择。另请查看http://www.mkyong.com/java/json-simple-example-read-and-write-json/,它为初学者提供了一个很好的教程。
答案 1 :(得分:0)
你可以使用gson 请参阅此链接 http://www.mkyong.com/java/how-do-convert-java-object-to-from-json-format-gson-api/
答案 2 :(得分:0)
使用javax.json
库,应该是这样的:
JsonReader reader = Json.createReader(new FileInputStream(dir));
JsonArray re = (JsonObject) reader.read() ;
double[] ret = new double[jre.size()];
for ( int i = 0; i<jre.size(); i++)
ret[i] = Double.parseDouble( jre.getString(i) );
然而,它确实取决于Json文件的外观。也许它是一个Json对象,有一个参数,它有一个数组作为值,或者其他东西。我希望这段代码可以为你提供一个先机。
答案 3 :(得分:0)
另一种选择是使用json-smart
将JSON转换为对象
JSONObject jsonObj = (JSONObject) JSONValue.parseWithException(inputJsonInStringFormat);
使用get()
方法检索数组
Integer [] intArray = (JSONArray) (JSONObject) jsonObj.get("arrayName");
答案 4 :(得分:0)
你不应该自己处理它让你的弹簧mvc为你做,一旦你启用了弹簧mvc注释,你将隐含json转换器,你只需要将jackson jar添加到classpath,查看这个视频{{3如果你想将JSON发送为[&#34; value1&#34;,&#34; value2&#34;],你可能会遇到问题,在这种情况下你需要自定义JsonDeserializer