스프링부트 어노테이션
핸들러(Controller) 매핑
•
RequestMapping
@RequestMapping(value="{URI}", method={RequestMethod}
Java
복사
•
GetMapping
@GetMapping("{URI}")
Java
복사
•
PostMapping
•
PutMapping
•
DeleteMapping
매개변수
•
◦
게시판에 글을 불러온다. GET /api/posts/{id} 게시글 불러오기.
•
◦
페이징 : 활용 가능. /api/posts?page=2&limit=25
•
RequestBody : JSON을 http body에 담아올때 → Post, Put 사용 가능 Get도 사용은 가능한데 보통 사용하지 않음. Delete에는 아예 Body를 실어보낼 수 없다.
◦
/menu/1234
아이디와 패스워드를 url에 담아보내면 보안에 취약
◦
POST 요청 보내고 아이디랑 패스워드를 Body담는다.
RequestBody가 알아서 Json형식의 Body를 자바 객체로 변환해줌.
객체 → json, json → 객체로 변환해주는 jackson, gson이 스프링부트 web에 들어가있음.
Controller
•
RestController : 안에 ResponseBody 있음. response 객체를 json으로 변환.
•
Controller : html이나 jsp 등 View를 전달해 줄 수 있음. 타임리프같은 템플릿 엔진 필요(?)
◦
View를 반환해줌.
@Contorller
public class MyController {
@GetMapping("/my")
public String index() {
return "index.html";
}
//...
}
Java
복사
빈 등록
@SpringBootApplication 안에 @ComponentScan이 있음.
@Component를 스캔하여 빈으로 등록함.
@Component 종류
•
Controller
•
RestController
•
Service
•
Repository
•
…