Spring27 *HTTP 요청 데이터 - 개요 | 김영한MVC1편 일반적으로 HTTP 요청 메시지를 통해 전달하는 방법은 3가지로 압축된다. GET - 쿼리 파라미터메시지 바디없이, 쿼리 파라미터에 데이터를 담아 전달한다.검색, 필터, 페이징 등에서 사용하는 방식이다. 데이터의 단순 조회일때, 또한 url에 해당 값이 노출되어도 상관없을 때,사용. POST - HTML Formcontent-type : application/x-www-form-urlencoded메시지 바디에 쿼리 파라미터 형식으로 전달한다. username=kim&age=15회원가입, 상품 주문같이 데이터의 보안이 중요하고, url에 정보가 노출이 안될 때 사용한다. 데이터의 저장, 수정, 삭제처럼 상태가 변경될 때도 사용. HTTP message body에 데이터를 직접 담아서 전달HTTP API에서.. 2024. 9. 26. HttpServletRequest - 기본 사용 basic 패키지 내에 request 패키지를 만든다. 서블릿을 하나 생성한다. HTTP 요청 헤더의 정보를 가져와서 확인해보기 위한 서블릿을 하나 만들어 보자. url로 요청을 보내보자 요청에 대한 다양한 정보가 출력되었다. 요청 헤더의 모든 정보를 출력해보자 ㄹprintHeaders라는 메서드를 만들어서 헤더정보를 출력했다. 이터레이터를 사용하여, 한 줄로 메서드를 만들 수도 있다. 다양한 header의 정보를 파악할 수 있다.request.getSserverName() : 호스트 확인 (여기선 localhost)request.getServerProt() : 포트 확인 (여기선 8080) Accept-Language : 허가가 된 요청 언어의 목록request.getLocales() : 언어의.. 2024. 9. 26. HttpServletRequest 개요 HTTP 요청 메시지를 개발자가 직접 파싱해서 사용해도 되지만, 매우 불편할 것이다. 서블릿은 개발자가 HTTP 요청 메시지를 편리하게 사용할 수 있도록 개발자 대신에 HTTP 요청 메시지를 파싱한다. 그리고 그 결과를 HttpServletRequest 객체에 담아서 제공한다. 개발자는 요청 관련 정보에 접근하려면 HttpServletRequest 객체만을 사용하면 되기 때문에 편리하다. HTTP 요청 메시지POST /save HTTP/1.1Host: localhost:8080Content-Type: application/x-www-form-urlencodedusername=kim&age=20 POST : HTTP 통신에는 여러가지 요청 유형이 있다. 그 중 하나를 의미하는 메서드이다.URL : /sav.. 2024. 9. 26. Hello 서블릿 | 김영한MVC1편 프로젝트 생성과 세팅이 완료되었다. 기본적인 Hello 서블릿을 만들어보자 ServletApplication.java에 @ServletComponentScan 어노테이션을 작성한다.해당 패키지 및 하위 패키지 전부에 존재하는 서블릿을 스캔 해 스프링 컨테이너에 등록한다. 편하게 해도 되지만 하위 basic 패키지를 만들고, HelloServlet.java 파일을 만들었다. @WebServletname : 서블릿 이름urlPatterns : 자원의 경로, 예) http://localhost:8080/hello서블릿이 되려면 HttpServlet을 상속받아야 한다.service메서드(응답을 위해 호출된다.)를 오버라이드 하여 원하는 처리를 할 수 있다. 매개변수로 request와 response가 들어오.. 2024. 9. 24. 프로젝트 생성 | 김영한MVC1편 start.spring.io 에서 스프링부트 프로젝트를 생성해보자 Gradle은 프로젝트 내 설정파일이다. Groovy 언어를 선택한다.Language는 JavaSpring Boot 버전은 SNAPSHOT을 제외한 버전을 선택한다. (안정된) Packaging은 War를 선택한다. 이 강의에서는 JSP를 사용해볼껀데, Jar는 JSP를 지원하지 않기 때문이다.보통은 Jar를 선택하여 생성한다. 그리고 하단의 Dependency(의존성)의 ADD를 누르고 Spring Web(WAS 내장), Lombok(어노테이션 기반 개발편리 툴) 원하는 폴더에 저장하고, build.gradle을 인텔리제이로 실행한다. 처음 실행하면 초기설정에 시간이 좀 걸린다. 설정이 끝난 후 우측 상단의 초록 방향 표시(Run 버.. 2024. 9. 24. 자바 웹 기술 역사 | 김영한MVC1편 JSP는 HTML 코드에 자바의 코드를 넣어 동적 HTML을 만들기가 편했다. 하지만, 자바의 코드를 사용해 데이터를 처리하고, HTML에 보여주는 역할과, HTML을 그리는 렌더링 역할까지 전부 하나의 파일안에서 수행해야 했기 떄문에, 굉장히 코드 가독성이 떨어지고, 유지보수면에서 불리했다. 이를 보완하고자, MVC 패턴이 사용된다. (SSR에서 사용하는 방식)클라이언트의 요청에 맞는 API를 호출 및 처리 하기 위한 컨트롤러(Controller)처리가 완료된 데이터를 담아 HTML로 보내기 위한 모델(Model)데이터를 받아 HTML위에 그리는 작업을 하기 위한 뷰(View) 현재의 사용 기술애노테이션 기반의 스프링 MVC 등장@ControllerMVC 프레임워크의 전국 시대를 마무리하게 되었다... 2024. 9. 24. 이전 1 2 3 4 5 다음