728x90 반응형 분류 전체보기114 [스프링 MVC 13] 서블릿: HTTP 요청 데이터 - API 메시지 바디 HTTP message body에 데이터를 직접 담아서 담아서 요청 먼저 가장 단순한 텍스트 메시지를 담아 전송하고, 읽어보자 HTTP 메시지 바디의 데이터를 InputStream을 사용해서 직접 읽을 수 있다 @WebServlet(name="requestBodyStringServlet", urlPatterns = "/request-body-string") public class RequestBodyStringServlet extends HttpServlet { @Override protected void service(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException { //HTTP메시지바디의 데이.. 2023. 7. 20. [스프링 MVC 12] 서블릿: HTTP 요청 데이터 - POST HTML Form HTML의 Form을 사용해서(메시지 바디에 쿼리 파리미터 형식으로 전달) 데이터를 전송해보자. main/webapp/basic/hello-form.html username: age: 전송 action="/request-param" RequestParamServlet 으로 전달된다. localhost:8080/basic/hello-form.html → localhost:8080/request-param 바디에 이 Form 데이터를 보낸다. username=jo&age=2 POST의 HTML Form을 전송하면 웹 브라우저는 다음 형식으로 HTTP 메시지를 만든다. 요청 URL: http://localhost:8080/request-param content-type: application/x-www-for.. 2023. 7. 20. [스프링 MVC 11] 서블릿: HTTP 요청 데이터 - GET 쿼리 파라미터 다음 데이터를 클라이언트에서 서버로 전송해보자. username=hello age=20 GET방식(메시지 바디 없이, URL의 쿼리 파라미터를 사용)으로 전송해보자. 쿼리 파라미터는 URL에 다음과 같이 ? 를 시작으로 보낼 수 있다. 추가 파라미터는 & 로 구분한다. http://localhost:8080/request-param?username=hello&age=20 서버에서는 HttpServletRequest 가 제공하는 다음 메서드를 통해 쿼리 파라미터를 편리하게 조회할 수 있다. String username = request.getParameter("username"); //단일 파라미터 조회 Enumeration parameterNames = request.getParameterNames();.. 2023. 7. 20. [스프링 MVC 3] 웹 애플리케이션 이해: 동시 요청 - 멀티 쓰레드 서블릿 객체는 쓰레드가 호출한다! 쓰레드: 애플리케이션 코드를 하나하나 순차적으로 실행하는 것 자바 메인 메서드를 처음 실행하면, main이라는 이름의 쓰레드가 실행 →쓰레드가 없다면 자바 애플리케이션 실행이 불가능 쓰레드는 한번에 하나의 코드 라인만 수행 →동시 처리가 필요하면 쓰레드를 추가로 생성 단일 요청 - 쓰레드 하나 사용 요청1이 오면 쓰레드를 할당하고,. 이 쓰레드를 가지고 서블릿 코드를 실행한다. 응답까지 되고나면 쓰레드 휴식 다중 요청 - 쓰레드 하나 사용 요청1이 오면 쓰레드를 할당하고, 이 쓰레드를 가지고 서블릿 코드를 실행한다. 요청1 처리가 지연되는 와중에 요청2가 오고, 요청2는 쓰레드를 쓰지못하여 기다려야 한다. 요청1,2 둘 다 죽는다. (타임아웃, 오류발생) →쓰레드를 생성.. 2023. 7. 19. [스프링 MVC 2] 웹 애플리케이션 이해: 서블릿 HTML Form 데이터 전송 예시 POST 전송 - 저장 이름이랑 나이의 값을 전송하면, HTML Form을 url은 /save, 방식은 post로 데이터(이름이랑 나이의 값)을 전달(저장) 웹브라우저가 그림과 같은 HTTP 요청 메시지를 생성하여 서버로 전송한다. 서버에서 처리해야 하는 업무 웹 애플리케이션 서버 직접 구현? 너무 많고 비효율적. →서블릿을 지원하는 WAS를 사용하면, 비즈니스 로직 외에는 다 자동화 된다! 서블릿 특징 urlPatterns(/hello)의 URL이 호출되면 서블릿 코드가 실행 HTTP 요청 정보를 편리하게 사용할 수 있는 HttpServletRequest HTTP 응답 정보를 편리하게 제공할 수 있는 HttpServletResponse 개발자는 HTTP 스펙을 매우 .. 2023. 7. 19. [스프링 MVC 10] 서블릿: HTTP 요청 데이터 (*중요) HTTP 요청 데이터를 어떻게 조회하는지 알아보자! HTTP 요청 메시지를 통해 클라이언트에서 서버로 데이터를 전달하는 방법 (3가지) 1. GET - 쿼리 파라미터 /url?username=hello&age=20 메시지 바디 없이, URL의 쿼리 파라미터에 데이터를 포함해서 전달 예) 검색, 필터, 페이징 등에서 많이 사용하는 방식 [스프링 MVC 11] 서블릿: HTTP 요청 데이터 - GET 쿼리 파라미터 (tistory.com) [스프링 MVC 11] 서블릿: HTTP 요청 데이터 - GET 쿼리 파라미터 다음 데이터를 클라이언트에서 서버로 전송해보자. username=hello age=20 GET방식(메시지 바디 없이, URL의 쿼리 파라미터를 사용)으로 전송해보자. 쿼리 파라미터는 URL에 다.. 2023. 7. 19. 이전 1 ··· 11 12 13 14 15 16 17 ··· 19 다음 728x90 반응형