[spring] @RequestMapping이란?
spring에서 mvc패턴을 사용하다보면 Controller단에서 @RequestMapping이라는걸 보게됩니다.
각페이지url마다 controller를 작성해야해서 여러개를 작성하게되는데요 그때마다 꼭 작성해줘야하는게
@RequestMapping입니다.
사용자가 특정 url을 요청하면 Controller는 어떤방식으로 처리할지 정의하는데
이때 그 요청을 매핑하기위해 사용하는게 @RequestMapping이다
@RequestMapping에서 가장많이 사용하는건 vlaue와 method인데
value : 요청받는 url값 설정
method: get, post 등 어떤 요청으로 받을지 설정
@RequestMapping의 get 방식 요청과 post 방식 요청
request요청을 보낼때 get방식과 post방식이 있음
get방식요청 : 뷰 페이지에서 form태그 속성에 method값을 get으로 설정해야함 예.method = RequestMethod.GET
Get방식과 Post방식 차이
post방식 : 숨겨져서 전송 ex. www.naver.com/로그인/id비번노출안됨
get방식: 내가 입력한값이 도메인주소에 노출 됨 ex. www.naver.com/로그인/id그대로노출/비밀번호노출
controller의 @requestMapping 설정방법
@RequestMapping(value="경로", method=RequestMethod.GET)
<아래 예시를 통해서 @requestMapping 작성방법 알아보기 >
위에 컨트롤러단에 적혀있는 @RequestMapping을 보면 총3개가 적혀있습니다.
@RequestMapping(value = "/index", method = RequestMethod.GET)
@RequestMapping(value = "/", method = RequestMethod.GET)
@RequestMapping(value = "/login", method = RequestMethod.GET)
(1) @RequestMapping(value = "/", method = RequestMethod.GET)
value에 / 가 되어있는경우는 기본 웹주소를 의미함
기본웹주소란 서버에 들어가보면
Host name: localhost라고 적혀있고
HTTP/1.1 :8088 이라고 적혀있는데
그럼 / 의 의미는 localhost:8088을 의미함
(2) @RequestMapping(value = "/login", method = RequestMethod.GET)
그럼 이경우는
/login 이니까
localhost:8088/login 이 url이 되는거고 method가 get이니까 로그인할때 작성하는 아이디 비밀번호가 그대로 상단에 노출되는 형태
'development♥ > [Java, Spring]' 카테고리의 다른 글
Failed to load ApplicationContext junit4 test (0) | 2022.10.04 |
---|---|
[spring] 스프링 프로젝트 폴더 구조 설명 (0) | 2022.10.03 |
MyBatis 마이바티스 및 설정방법 [Spring Java] (0) | 2022.10.02 |