view에서 json형식의 데이터 받아오기 + POJO객체에 바인딩 하기

최진하·2023년 2월 6일
0

방법 1 : json을 String으로 받아온 후 objectMapper를 통해 객체에 바인딩

private ObjectMapper objectMapper = new ObjectMapper();
	
	@PostMapping(value = "/monitoring.do")
	public ModelAndView monitoringSave(String monitoringVOS) throws Exception {	
		ModelAndView mv = new ModelAndView("jsonView");
		MonitoringVO monitoringVO = objectMapper.readValue(monitoringVOS, MonitoringVO.class);
        
        monitoringService.insertMonitoring(monitoringVO);
        mv.addObject("result", monitoringVO.getRtnVal());		

		return mv;
	}

방법 2 : json을 @RequestBody를 이용해 객체로 즉시 바인딩되어 받아오기

	@PostMapping(value = "/monitoring.do")
	public ModelAndView monitoringSave(@RequestBody MonitoringVO monitoringVO) throws Exception {	
		ModelAndView mv = new ModelAndView("jsonView");
		       
        monitoringService.insertMonitoring(monitoringVO);
        mv.addObject("result", monitoringVO.getRtnVal());
				
		return mv;
	}

방법 2 의 경우에는 dispatcher-servlet.xml 파일에

RequestMappingHandlerAdapter 빈 프로퍼티 설정에

<property name="messageConverters">
		<bean class="org.springframework.http.converter.json.MappingJackson2HttpMessageConverter" />
</property>

를 추가해야한다.

참고하면 좋을
https://m.blog.naver.com/writer0713/221853596497

profile
소소한 정리

0개의 댓글