[개발 공부]/[JSP]

[JSP] JSP 에서 controller 로 데이터 보내기

wild keyboardist 2022. 12. 2. 11:51

[JSP] JSP 에서 controller 로 데이터 보내기

 

 

 

 

 

 

 

 

  • form 을 사용한 submit

 

<form id="login" action="/login" method="post">
    <input type="text" name="loginId">
    <input type="password" name="password">
    <input type="hidden" name="shopNo" value="${hiddenValue}">
    <button onclick="submit">확인</button>
</form>


// 스크립트로 submit 할 때는
// document.getElementById("login").submit();

 

form 의 method 는 GET/POST 등의 메소드를 지정한다.
form 의 action 은 Spring controller 의 @GetMapping / @PostMapping 등과 연결된다.
form 내부의 input 태그들의 name 은 Java Bean 의 필드명과 동일해야 한다. (DTO 객체 필드명과 동일)

 

 

 

 

 

 

 

  • Query Parameter 를 이용한 데이터 passing => "?" 를 사용

 

<a href="/getUser?userId=123">get user details</a>

 

JSP 에서 다른 페이지로 redirect 할 때는 GET 메소드를 묵시적으로 사용한다.

Spring controller  에서는 @GetMapping(/getUser) 로 받는 메소드를 찾는다.

Spring controller 에서는 @RequestParam String userId  를 사용하여 queryString 을 받을 수 있다.
 

 

 

 

 

 

 

  • path Parameter 를 이용한 데이터 passing => "/" 를 사용

 

<a href="/getUser/12345">get user details</a>

 

이 또한 다른 페이지로 redirect 하는 만큼, GET 메소드를 묵시적으로 사용하는 것이다.
Spring controller 에서는 @PathVariable String userId 를 사용하여 pathVariable 을 받을 수 있다.
한가지 다른 점은 @GetMapping(/getUser/{userId}) 로 명시해주어야 한다.