* 스프링 입문은 Window로 스프링 MVC 1편은 Mac으로 진행합니다
* 진도 : 섹션2 - (3) ~ (4)
* : 자바 클래스명, : 코드, : 단축키
1. HttpServletRequest
- HTTP 요청 메세지를 손쉽게 작성해주는 기능
- 구조
< START LINE >
- HTTP 메소드
- URL
- 쿼리 스트링
- 스키마, 프로토콜
< 헤더 >
- 헤더 조회
< 바디 >
- form 파라미터 형식 조회
- message body 데이터 직접 조회
2. HttpServletRequest 사용
[ src - main - java - hello.servlet - basic - RequestHeaderServlet ]
-@WebServlet(name = "requestHeaderServlet ", urlPatterns = "/request-header" )
- 해당 어노테이션에 경로를 입력하면 클라이언트에서 톰캣서버가 찾아서 실행한다
- /request-header 입력하면 하위 메서드 실
- public class RequestHeaderServlet extends HttpServlet
- 서블릿을 사용하기 위해 HttpServlet을 상속받는다
- 서블릿이 웹상에서 HTTP 프로토콜을 이용해 서비스를 처리하기 위해 반드시 상속받아야 하는 클래스
- 모든 서블릿 클래스의 상위 클래스는 HttpServlet
- protected service (control + o)
- servlet 호출되면 서비스 메서드도 호출
- 위에서 만든 urlPatterns 대로 검색하면 콘솔 로그에 해당 명령어 출력
- request.getParameter()
- HTTP 요청의 파라미터 값을 얻기 위해 사용하는 메서드
- 사용자가 입력한 데이터를 가져올 수 있다
- 문장 끝에 커서 두고 option + command + V
- response.getWriter().write()
- response.getWriter()를 통해 writer 객체를 얻는다
- write나 print를 통해 response body message를 생성하여 응답
- 실제 홈피에 write() 안의 내용이 출력된다
2. 정보 조회 [ src - main - java - hello.servlet - basic - RequestHeaderServlet ]
- start-line
- Header 모든 정보
- Header 특정 정보
- 기타 정보
< GET - 쿼리 파라미터 >
- /hello?username=hi&age=22
- 메시지 바디를 사용하지 않고, URL의 쿼리 파라미터에 데이터를 포함해서 전달하는 방법
ex) 검색, 필터, 페이징에서 많이 사용 - HttpServletRequest를 통해서 쿼리 파라미터 조회하기
형식 | 리턴 타입 | 설명 |
request.getParameter("username") | String | 단일 파라미터 조회 |
request.getParameterNames() | Enumeration<String> | 파라미터 네임 모두 조회 |
request.getParameterMap() | Map<String, String[]> | Map 형식으로 파라미터 조회 |
request.getParameterValues("username") | String[] | 동일 이름의 복수 파라미터 조회 |
[출처] 김영한 강사님 인프런 스프링 MVC 1편
https://www.inflearn.com/course/%EC%8A%A4%ED%94%84%EB%A7%81-mvc-1/dashboard
스프링 MVC 1편 - 백엔드 웹 개발 핵심 기술 - 인프런 | 강의
웹 애플리케이션을 개발할 때 필요한 모든 웹 기술을 기초부터 이해하고, 완성할 수 있습니다. 스프링 MVC의 핵심 원리와 구조를 이해하고, 더 깊이있는 백엔드 개발자로 성장할 수 있습니다., 원
www.inflearn.com
'Spring > 스프링 MVC' 카테고리의 다른 글
[스프링 MVC 1편] 2 - (5) HttpServletResponse (0) | 2023.11.03 |
---|---|
[스프링 MVC 1편] 2 - (4) HTTP 요청 데이터 (0) | 2023.11.02 |
[스프링 MVC 1편] 2 - (2) 서블릿 생성 (0) | 2023.10.21 |
[스프링 MVC 1편] 2 - (1) 프로젝트 생성 (0) | 2023.10.18 |
[스프링 MVC 1편] 1 - (3) 멀티스레드 (0) | 2023.10.18 |