상세 컨텐츠

본문 제목

Spring RequestMethod (Get, Post)방식 예제 @RequestMapping

Spring

by shika 2022. 1. 20. 20:52

본문

자바 스프링에서 @RequestMapping을 사용할때는 GET방식과 POST 방식이 있다

GET은 정보를 보여주고

POST는 정보를 숨긴다.

 

주의해야 할점은 #컨트롤러 에서 사용시에

각각에 맞게 구현을 해주어야한다.

 

예를 들어 컨트롤러에서

@RequestMapping(value = "/test1", method = RequestMethod.GET)
	public String test1_get() {
		return "test1";
	}
	
	@RequestMapping(value = "/test2", method = RequestMethod.POST)
	public String test2_post() {
		return "test2";
	}

이렇게 구현을하였으면

 

jsp페이지에서는 

<a href ='test1'>test1 get</a><br/>
	<form action="test1" method="post">
		<button type="submit">test1 post</button>
	</form>
    
<hr/>
<a href="test2">test2 get</a>
<form action="test2" method="post">
    <button type="submit">test2 post</button>
</form>
<hr/>

이렇게 받을 수 있는데 jsp페이지 접속시에

test1은 post방식이 정상적으로 작동하지않고

test2는 get방식이 정상적으로 작동하지 않는다.

get과 post를 지정해주었으면 받는곳에서도 똑같은 방식으로

받아야 정상적으로 작동하게 된다

 

그리고 컨트롤러에서는 @RequestMapping(method = RequestMethod.GET)

이렇게 말고도

@GetMapping("/test4") 이렇게 간단하게 사용할수도 있다

 

이건 포스트 방식 간단히

@PostMapping("/test4")

 

마지막으로

그렇다면 동시에 get과 post를 만족하게 하고싶으면??

 

간단하다.

컨트롤러어서 get과 post 2개의 방식을 모두 다 만들어주면 된다

그리고 컨트롤러에서는 @GetMapping, @PostMapping보다

원래 사용했던 @RequestMapping(value = "/test1", method = {RequestMethod.GET, RequestMethod.POST})

이렇게 사용해주면 더욱 편하다.

관련글 더보기

댓글 영역