백엔드/JSP, Servlet

JSP & Servlet 7일차

한뜽규 2023. 1. 4. 00:33
728x90

사용자의 요청 (Request)과 web-server의 응답 (Response)을 담당하는 객체에 대해서 학습합니다.

 

  • request 객체

바로 해보도록 하자

일단 데이터를 받기 위해 html 파일을 만든다.

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>Title</title>
</head>
<body>

    <form action="mSignUp.jsp" method="get">
        name: <input type="text" name="m_name"><br>
        password: <input type="password" name="m_pass"><br>
        hobby:  sport <input type="checkbox" name="m_hobby" value="sport">,
                cooking <input type="checkbox" name="m_hobby" value="cooking">,
                travel <input type="checkbox" name="m_hobby" value="travel"><br>
        <input type="submit" value="sign up">
    </form>

</body>
</html>

당연히 이 안의 내용은 설명하지 않도록 하겠다.

당연히 이런 홈페이지가 출력이 된다.

우리는 여기서 jsp를 이용하여 데이터를 받아야 한다.

action="mSignUp.jsp" method="get"는

mSignUp.jsp를 사용하고 get 방식으로 데이터를 넘긴다는 것이다.

 

이 데이터를 받는 jsp 파일은 

이렇게 만들어진다.

 

태그들을 이용하여 데이터들을 받는데 대부분의 내용은 6일차의 내용과 비슷하고, 변수에 데이터를 입력받는 방식만 살펴본다면

request.getParameter(String s); 를 이용하여 값을 입력받는 것을 볼 수 있는데

Servlet과 똑같이 request 객체에서 뽑아 사용하면 된다.

 

실행을 시키고 데이터를

이렇게 입력해보면

이렇게 잘 출력이 되는 것을 볼 수 있다.

역시 Get방식이라 주소창의 주소가 긴 것을 볼 수 있다.

  • response 객체

위와는 반대로 응답하는 방법을 살펴보자

이런 jsp 파일을 만들고 

response.sendRedirect를 이용하여 secondPage.jsp를 연결해주었다.

sendRedirect는 지정한 페이지로 이동하는 방식이다.

secondPage.jsp의 내용은 이와같다.

이렇게 실행을 해보면

이렇게 First Page!!가 뜨지 않고 바로 Second Page!!가 뜨는 것을 볼 수 있다.

바로 secondPage.jsp로 넘어가기 때문이다.

JSP 응답에서도 이렇게 response 객체를 활용하면 된다.

 

JSP의 request와 response를 공부하면서 Servlet의 request와 response도 비교해보면 좋을 것 같다.