Fight the Future

Java言語とJVM、そしてJavaエコシステム全般にまつわること

IT勉強会での初プレゼンなどお助けします!

勉強会でスピーカーをやりたいけど、プレゼンが初めて、苦手という方に無償でコーチできます。スライドのレビューや録画したリハへのアドバイスなどなど。Twitter@jyukutyoまでメンションでもDMでもお気軽にご連絡ください。

私はIT講師の経験があり、プレゼンはデブサミやJJUG CCCなど200人規模の経験が豊富で最大800人の前でプレゼンしました。海外ではDevoxxUSで。デブサミ2017では公募スピーカー1位、デブサミ関西2012アワードで5位となりました。

Spring MVCでJSON形式のレスポンスを返す

org.springframework.web.servlet.view.json.MappingJacksonJsonViewクラスを使う。

Jacksonというライブラリを変換に使うため、JARファイルを追加しなければClassNotFoundExceptionになる。

  • jackson-core-asl-1.5.2.jar
  • jackson-mapper-asl-1.5.2.jar

ちなみにJacksonにはaslとついたものとlgplとついたものがある。これはライセンス(asl = Apache Software License、lgpl = LGPL)。

ソースではJSONにしたいキーと値をマップにしてMappingJacksonJsonViewに渡す。

	@RequestMapping(method = { RequestMethod.POST })
	public MappingJacksonJsonView methodName(@RequestParam("id") String id) {
		Map<String, Object> map = new HashMap<String, Object>();
		map.put("id", id);
		MappingJacksonJsonView view = new MappingJacksonJsonView();
		view.setAttributesMap(map);
		return view;
	}
{"id":13}

といったJSONがContentType:"application/json"で返される。