Spring_HttpServletRequest와 HttpServletResponse: 요청과 응답

jjyu_my·2024년 10월 20일

Spring

목록 보기
6/10
post-thumbnail

HttpServletRequest (요청)

  • HttpServletRequest는 클라이언트(즉, 웹 브라우저)가 서버에 요청을 보낼 때 사용하는 객체입니다
  • 서버는 이 객체를 통해 클라이언트가 보낸 다양한 요청 정보를 받을수 있습니다

상황설명예시

    1. 웹사이트에서 회원가입 폼에 이름이나 이메일을 입력하고 '제출' 버튼을 누르면, 그 정보가 서버로 전달됩니다
    1. 이때 서버는 그 데이터를 HttpServletRequest 객체로 받습니다
    1. 만약 서버에서 이 데이터를 가져오고 싶다면, getParameter()라는 메서드를 사용하면 됩니다

실전예시

  • request.getParameter("name")를 사용하면, 회원가입 폼에서 입력한 'name' 값을 가져올 수 있습니다
    -이때 반환값은 항상 문자열(String) 형태입니다

💡 요약
HttpServletRequest 는 클라이언트가 보낸 데이터를 서버가 받을 때 쓰는 객체입니다!
getParameter()를 사용해 폼 데이터(예: 이름, 이메일)를 서버에서 가져올 수 있습니다


HttpServletResponse (응답)

  • HttpServletResponse는 서버가 클라이언트에게 응답을 보낼 때 사용하는 객체입니다
  • 즉, 클라이언트가 서버에게 요청을 보내면, 서버는 그 요청에 대한 답장을 HttpServletResponse를 통해 보냅니다

응답 코드 보내기:

  • 서버는 요청이 성공했는지 실패했는지 알려주는 코드를 클라이언트에게 보냅니다
  • 페이지가 잘 로드되면 "200 OK", 찾는 페이지가 없으면 "404 Not Found" 같은 메시지를 보냅니다

응답 내용 설정

  • 서버는 클라이언트에게 보낼 데이터를 설정할 수 있습니다
  • 예를 들어, 웹 페이지 내용이나 파일을 전송할 수 있습니다

쿠키 설정:

  • 서버는 클라이언트에게 쿠키를 보내서 로그인 정보나 사용자 설정을 저장할 수 있습니다

💡 요약
즉! 서버가 클라이언트에게 응답을 보낼 때 쓰는 객체!
페이지 상태(성공, 오류)나 데이터(웹페이지, 파일) 등을 클라이언트에게 전달합니다


@RequestParam

  • @RequestParam은 클라이언트의 요청에서 특정 값을 받아와서 메서드에 전달하는 역할을 합니다
  • 주로 GET/POST 요청에서 사용됩니다.
public String hello(@RequestParam("name") String name) {
    return "안녕하세요, " + name + "님!";
}

=> 여기서, URL로 ?name=홍길동 같은 요청이 들어오면, @RequestParam("name")이 해당 값을 받아 메서드로 전달합니다


📌 한눈에 보는 요약
HttpServletRequest는 클라이언트의 요청을 받는 역할(편지함)
HttpServletResponse는 서버가 클라이언트에게 응답을 보내는 역할(편지봉투)
@RequestParam은 요청에서 특정 데이터를 받아와서 메서드에 전달하는 역할

profile

0개의 댓글