[Spring] PostMapping,GetMapping

2024. 7. 21. 07:54WebBack/Spring

Get 방식의 약점은 입력한 내용이 URL에 입력된다는 것이다. 그래서 개인정보 노출을 막기 위해서는 Post 방식으로 받아야 한다. 

이를 위한 방법이 하나있다. 입력값이 전송되는 URL에 다음과 같이 적어주면 된다. 이것이 번거롭다면 아래와 같이 바꿀 수 있다. 반약에 Get으로 받도록 하려면 @GetMapping을 적으면 된다. 

 

*참고로 PastMapping과 GetMapping은 구별이 가능하기 때문에 같은 URL을 써도 문제가 발생하지 않는다. 

//@RequestMapping(value="/register/save", method=RequestMethod.POST)
@PostMapping("/register/save")

 

이를 실행하기 위해서는 [Maven Dependencies]의 버전이 바뀌어야 한다. pom.xml에서 다음과 같이 버전을 바꾸어주자. 

이제 GET 형식으로 정보를 전달할 수 없다. 

그리고 RequestMapping을 따로 분리해놓으면 URL의 공통 부분을 생략하는 것도 가능하다. 

@Controller
@RequestMapping("/register")
public class RegisterController {
	@GetMapping("/add")
	public String register() {
		return "register";
	}
	
	@PostMapping("/add")
	public String save(User user, Model model) throws Exception {
    ....