IT Study/Spring

Spring - SpringBoot 스타일로 정형화 해보기

hhyyyjun 2023. 1. 3. 14:04

이전의 내용들을 보면 View에 데이터를 보낼 필요가 있을 때 ModelAndView 객체를 통하여 데이터 전달을 했었다.

전달할 데이터가 존재하지 않으면 String 객체를 통해 경로를 설정하였다.

이번엔 SpringBoot 스타일로 코드를 작성해보았다.

SpringBoot는 반환값을 String 객체로 정형화 시키는데, 전달할 데이터가 존재할 때는 Model 객체를 활용하였다.

데이터를 전달할 때의 기존의 코드 - mav 객체를 통한 전달하기

@RequestMapping(value="/board.do",method=RequestMethod.GET)
	public ModelAndView board(BoardVO bVO,BoardDAO bDAO, ModelAndView mav)  {
		bVO=bDAO.selectOneBoard(bVO);

		mav.addObject("data", bVO);
		mav.setViewName("board.jsp");
		return mav;
	}

SpringBoot 스타일로 데이터 전달하기

@RequestMapping(value="/board.do",method=RequestMethod.GET)
	public String board(BoardVO bVO,BoardDAO bDAO, Model model)  {
		bVO=bDAO.selectOneBoard(bVO);

		model.addAttribute("data",bVO); //Springboot 방식
		return "board.jsp";
	}

String 객체로 경로를 반환하면서, View에서 필요한 데이터가 존재할 때 model 객체를 통해 데이터를 전달한다.

이 때 model 을 통해 세션에 데이터를 저장했고, 다른 Controller에서 데이터를 특정적으로 사용할 필요가 있을 때

사용하는 방법은 이전 포스팅의 SessionAttributes 메서드를 확인해보자

https://hhyyyjun.tistory.com/169

 

Spring - @RequestParam/@ModelAttribute/@SessionAttribute

@RequestParam - 기존의 스코프를 통한 request.getParameter()와 같은 기능이다. - 단일 파라미터를 쉽게 가져올 수 있는 방법 중 하나이다. - 구조를 바꾸기 힘들 때 사용하는 경우가 있다.(VO에서 멤버변수

hhyyyjun.tistory.com