본문 바로가기
728x90
반응형

전체 글602

[Spring] HTTP 요청 데이터 종류 및 GET 쿼리 파라미터 HTTP 요청 메시지를 통해서 클라이언트에서 서버로 데이터를 전달하는 방법의 종류가 있다. 주로 3가지 방법을 사용한다. (1) GET - 쿼리 파라미터 - /url?username=hello&age=20 - 메시지 바디 없이, URL의 쿼리 파리미터에 데이터를 포함해서 전달 - 예) 검색, 필터, 페이징 등에서 많이 사용하는 방식 (2) POST - HTML Form - content-type : application/x-www-form-urlencoded - 메시지 바디에 쿼리 파라미터 형식으로 전달 username=hello&age=20 - 예) 회원 가입, 상품 주문, HTML Form 사용 (3) HTTP message body에 데이터를 직접 담아서 요청 - HTTP API에서 주로 사용, J.. 2023. 5. 17.
[Spring] HttpServletRequest 개요 및 기본 사용 HTTP 요청 메시지를 개발자가 직접 파싱해서 사용해도 되지만, 매우 불편할 것이다. 서블릿은 개발자가 HTTP 요청 메시지를 편리하게 사용할 수 있도록 개발자 대신에 HTTP 요청 메시지를 파싱한다. 그리고 그 결과를 HttpServletRequest 객체에 담아서 제공한다 HttpServletRequest를 사용하면 다음과 같은 HTTP 요청 메시지를 편리하게 조회할 수 있다. POST /save HTTP/1.1 Host: localhost:8080 Content-Type: application/x-www-form-urlencoded username=lee&age=30 시작 라인 ( POST /save HTTP/1.1 )은 - HTTP 메소드 - URL - 쿼리 스트링 - 스키마, 프로토콜 의 정보가.. 2023. 5. 17.
[Spring] 서블릿(Servlet) 만들기 스프링 부트 환경에서 서블릿을 등록하고 사용해본다. 서블릿은 톰캣 같은 웹 애플리케이션 서버를 직접 설치하고,그 위에 서블릿 코드를 클래스 파일로 빌드해서 올린 다음, 톰캣 서버를 실행하면 된다. 하지만 이 과정은 매우 번거롭다. > 스프링 부트는 톰캣 서버를 내장하고 있으므로, 톰캣 서버 설치 없이 편리하게 서블릿 코드를 실행할 수 있다. @ServletComponentScan : 스프링 부트 서블릿을 직접 등록해서 사용할 수 있도록 @ServletComponentScan 을 지원한다. 아래는 @ServletComponentScan 을 포함한 ServletApplcation 소스이다. ServletApplication.java package helloMVC.servlet; import org.sprin.. 2023. 5. 16.
[Spring] 서블릿(Servlet) 프로젝트 환경 설정 (IntelliJ) 1. Spring 사이트 가서 프로젝트 다운 받기 https://start.spring.io/ 맨 처음에 화면이 이렇게 나온다. 아래는 필자의 선택 항목이다 Project : Gradle - Groovy Language : Java Spring Boot : 2.7.11 Group : helloMVC Artifect : servlet Name : servlet Package Name : helloMVC.servlet Packaging : War Java : 11 처음엔 스프링 부트 3 버전을 사용하고 싶었으나, 스프링 부트를 3버전을 사용하려면 최소 JDK 버전이 17은 돼야 한다. 그래서 다시 JDK 를 깔고 진행해야하는 번거로움을 피하기 위해서 그냥 스프링 부트 2버전을 선택하여 진행했다. War 를 .. 2023. 5. 16.
[Spring] 자바 백엔드 웹 기술 역사(서블릿, JSP, MVC) 자바 웹 기술은 변천사가 있어왔다. 아래는 과거에 사용했던 기술들이다. 1997년도에 처음 서블릿을 사용했으며, 이 당시에는 HTML 생성이 어려웠다. 1999년도에 들어 JSP를 사용하였고, HTML 생성은 편리하지만 비즈니스 로직까지 너무 많은 역할을 담당했다. 그 이후 서블릿, JSP 조합으로 MVC 패턴을 만들어 사용했는데, 모델, 뷰, 컨트롤러 역할로 나누어 개발했다. 2000년대 초부터 2010년대 초까지 MVC 프레임워크 춘추전국시대였다. MVC 패턴 자동화, 복잡한 웹 기술을 편리하게 사용할 수 있는 다양한 기능을 지원했다. 스트럿츠, 웹워크, 스프링 MVC(과거 버전) 현재는 아래와 같은 기술들을 사용하고 있다. 애노테이션 기반의 스프링 MVC를 사용한다 - @Controller - MV.. 2023. 5. 16.
[Spring] HTML, HTTP API, CSR, SSR 정적인 리소스로는 고정된 HTML 파일, CSS, JS, 이미지, 영상 등을 제공한다. 주로 웹 브라우저를 예로 들 수 있다. HTML 페이지는 동적으로 필요한 HTML 파일을 생성해서 전달한다. 웹 브라우저는 HTML을 해석한다. HTML이 아니라 데이터를 전달한다 주로 JSON 형식을 사용하고, 다양한 시스템에서 호출한다. 다양한 시스템에서 호출할 수 있고, 데이터만 주고 받는 것 뿐만 아니라 UI 화면이 필요하면 클라이언트가 별도로 처리한다 HTTP API는 다양한 시스템을 연동할 수 있다. 주로 JSON 형태로 데이터 통신을 하며, UI 클라이언트 접점이 있다. 앱 클라이언트(아이폰, 안드로이드, PC 앱) 웹 브라우저에서 자바스크립트를 통한 HTTP API 호출을 한다. React, Vue.js.. 2023. 5. 15.
728x90
반응형