[스프링 MVC 1편 - 백엔드 웹 개발 핵심 기술] MVC 패턴
·
Back-End/Spring
MVC 패턴 - 개요서블릿과 JSP의 한계서블릿으로 개발할 때는 뷰(View) 화면을 위한 HTML을 만드는 작업이 자바 코드에 섞여 지저분하고 복잡해진다. JSP를 사용하면 뷰를 생성하는 HTML 작업을 깔끔하게 가져가고, 동적으로 변경이 필요한 부분에만 자바코드를 적용할 수 있다. 하지만 JSP 코드 상위 부분의 절반은 비즈니스 로직이고, 나머지 하위 절반은 결과를 HTML로 보여주기 위한 뷰 영역이 된다. JSP에는 Java 코드, Repository 등 다양한 코드가 모두 노출되며 너무 많은 역할을 가져가게 된다.  하나의 서블릿이나 JSP로 비즈니스 로직과 뷰 렌더링을 모두 처리하게 되면 유지보수가 어려워진다. 제일 큰 문제점은 둘 사이에 변경의 라이프 사이클이 다르다는 점이다. 예를 들면 UI..
[스프링 MVC 1편 - 백엔드 웹 개발 핵심 기술] 회원 관리 웹 애플리케이션 요구사항
·
Back-End/Spring
회원 관리 웹 애플리케이션 요구사항기능 요구사항회원 저장회원 목록 조회  회원 도메인 모델id는 Member를 회원 저장소에 저장하면 회원 저장소가 할당한다.package hello.servlet.basic.domain.member;import lombok.Getter;import lombok.Setter;@Getter@Setterpublic class Member { private Long id; private String username; private int age; public Member(){} public Member(String username, int age) { this.username = username; this.age = age; ..
[스프링 MVC 1편 - 백엔드 웹 개발 핵심 기술] HTTP 응답 데이터
·
Back-End/Spring
[작성일: 2024. 07. 01] HTTPServletResponse - HTML 응답@WebServlet(name="responseHtmlServlet", urlPatterns = "/response-html")public class ResponseHtmlServlet extends HttpServlet { @Override protected void service(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException { //Content-Type: text/html;charset=utf-8 response.setContentType("text/htm..
[스프링 MVC 1편 - 백엔드 웹 개발 핵심 기술] HttpServletResponse 기본 사용법
·
Back-End/Spring
[작성일: 2024. 06. 26] HttpServletResponse 역할HTTP 응답 메시지 생성HTTP 응답 코드 지정헤더 생성바디 생성편의 기능 제공Content-Type쿠키Redirect package hello.servlet.basic.response;import jakarta.servlet.ServletException;import jakarta.servlet.annotation.WebServlet;import jakarta.servlet.http.Cookie;import jakarta.servlet.http.HttpServlet;import jakarta.servlet.http.HttpServletRequest;import jakarta.servlet.http.HttpServletRespo..
[스프링 MVC 1편 - 백엔드 웹 개발 핵심 기술] HTTP 요청 데이터
·
Back-End/Spring
[작성일: 2024. 06. 24] GET 쿼리 파라미터package hello.servlet.basic.request;import jakarta.servlet.ServletException;import jakarta.servlet.annotation.WebServlet;import jakarta.servlet.http.HttpServlet;import jakarta.servlet.http.HttpServletRequest;import jakarta.servlet.http.HttpServletResponse;import java.io.IOException;/** 1. 파라미터 전송 기능* http://localhost:8080/request-param?username=hello&age=20* */@Web..
[스프링 MVC 1편 - 백엔드 웹 개발 핵심 기술] HttpServletRequest
·
Back-End/Spring
[작성일: 2024. 04. 11] HttpServletRequest 역할HTTP 요청 메시지를 개발자가 직접 파싱해서 사용하면 매우 불편해진다. 서블릿은 개발자가 HTTP 요청 메시지를 편리하게 사용할 수 있도록 개발자 대신에 HTTP 요청 메시지를 파싱하고, 그 결과를 HttpServletRequest 객체에 담아서 제공한다.  POST /save HTTP/1.1Host: localhost:8080Content-Type: application/x-www-form-urlencodedusername=kim&age=20  HttpServletRequest를 사용하면 HTTP 메시지를 편리하게 조회할 수 있다. Start Line에는 HTTP 메소드, URL, 쿼리 스트링, 스키마, 프로토콜의 정보를 제공한..