두 어노테이션은 HTTP의 요청과 응답 데이터에 대한 처리를 해주는 어노테이션이다. 객체를 응답과 요청을 하기 위해서는 body를 이용하여 정보를 주고 받는다. 이 때 body는 JSON파일을 이용한다.
@Controller
class BookController{
@GetMapping("/Booklist")
@ResponseBody
public Book sendBookList() {
//Book bean 객체를 생성
Book bean = new Book();
//bean을 setter로 값을 삽입.
bean.setBname("오라클 데이터베이스개론");
bean.setPrice(13500);
bean.setPublish("한빛미디어");
//객체를 리턴. 객체 리턴시에는 JSON형태로 반환이 됨.
return bean;
}
}
//Book 객체
@Getter @Setter //롬복 라이브러리 사용하여 setter와 getter선언
public class Book{
//Book 클래스 변수
private String bname;
private int price;
private String publish;
}
@Controller //컨트롤러로 선언
class BookController{
@PostMapping("/Booklist") //Post로 받음.
public String getBookList(@RequestBody Book vo) throws Exception {
//Spring에서 알아서 JSON key값과 Book의 변수들과 매핑해주기 때문에
//따로 손댈 곳이 없음.
System.out.println("bname : " + vo.bname);
System.out.println("price : " + vo.price);
System.out.println("publish : " + vo.publish);
return "book/bookList2";
}
}