web-dev-qa-db-ja.com

春:コントローラーからJSONをModelAndVIewとして返す

SpringControllerからJSONをビューまたはModelAndViewとして返すにはどうすればよいですか? @ResponseBodyアノテーションの使用には興味がありません。これを行う他の方法はありますか?

21
Arjun

はい、 MappingJacksonJsonView を返すか、mav.setView(new MappingJacksonJsonView())を使用してModelAndViewオブジェクトに割り当てることができます。

更新:Spring 4では、MappingJacksonJsonViewは 非推奨 です。 MappingJackson2JsonView にアップグレードすることをお勧めします

32

org.codehaus.jackson.map.ObjectMapperクラスを使用して、出力ストリームにjson文字列を書き込むことができます。コントローラのメソッドで次のコードスニペットを使用します。

ObjectMapper mapper = new ObjectMapper();
mapper.writeValue(outputStream, model);
outputStream.flush();
0
Farshid Zaker