본문 바로가기

Engineering WIKI/Spring Boot7

[인프런 - 스프링 MVC 2편 - 백엔드 웹 개발 활용 기술] 예외 처리와 오류 페이지 해당 내용은, '인프런 - 스프링 MVC 2편 - 김영한님 강의'를 개인적으로 개념정리를 위해 정리한 내용입니다. 서블릿 예외 처리 - 시작 스프링이 아닌 순수 서블릿 컨테이는 예외를 어떻게 처리하는지 알아보자 서블릿은 다음 2가지 방식으로 예외를 처리한다. Exception (예외) response.sendError (HTTP 상태 코드, 오류 메시지) Exception(예외) 자바 직접 실행 자바의 메인 메서드를 직접 실행하는 경우 main 이라는 이름의 쓰레드가 실행된다. 실행 도중에 예외를 잡지 못하고 처음 실행한 main() 메서드를 넘어서 예외가 던져지면, 예외 정보를 남기고 해당 쓰레드는 종료된다. 웹 애플리케이션 웹 애플리케이션은 사용자 요청별로 별도의 쓰레드가 할당되고, 서블릿 컨테이너 .. 2023. 11. 2.
[인프런 - 스프링 MVC 1편 - 백엔드 웹 개발 핵심 기술] 6장. 스프링 MVC - 기본 기능 해당 내용은, '인프런 - 스프링 MVC 1편 - 백엔드 웹 개발 핵심 기술 (유료 - 69,300) 김영한님 강의'를 개인적으로 개념정리를 위해 정리한 내용입니다. 로깅 간단히 알아보기 로깅 라이브러리 스프링 부트 라이브러리를 사용하면 스프링 부트 로깅 라이브러리( spring-boot-starter-logging )가 함께 포함된다. 스프링 부트 로깅 라이브러리는 기본으로 다음 로깅 라이브러리를 사용한다. SLF4J - http://www.slf4j.org Logback - http://logback.qos.ch 로그 라이브러리는 Logback, Log4J, Log4J2 등등 수 많은 라이브러리가 있는데, 그것을 통합해서 인터페이스로 제공하는 것이 바로 SLF4J 라이브러리다. 쉽게 이야기해서 SLF.. 2023. 9. 27.
[인프런 - 스프링 MVC 1편 - 백엔드 웹 개발 핵심 기술] 5장. 스프링 MVC - 구조 이해 해당 내용은, '인프런 - 스프링 MVC 1편 - 백엔드 웹 개발 핵심 기술 (유료 - 69,300) 김영한님 강의'를 개인적으로 개념정리를 위해 정리한 내용입니다. DispacherServlet 서블릿 등록 DispacherServlet 도 부모 클래스에서 HttpServlet 을 상속 받아서 사용하고, 서블릿으로 동작한다. DispatcherServlet → FrameworkServlet → HttpServletBean → HttpServlet 스프링 부트는 DispacherServlet 을 서블릿으로 자동으로 등록하면서 모든 경로( urlPatterns="/" )에 대해서 매핑한다. 참고: 더 자세한 경로가 우선순위가 높다. 그래서 기존에 등록한 서블릿도 함께 동작한다. 요청 흐름 서블릿이 호출되면.. 2023. 9. 24.
[인프런 - 스프링 MVC 1편 - 백엔드 웹 개발 핵심 기술] 4장. MVC 프레임워크 만들기 해당 내용은, '인프런 - 스프링 MVC 1편 - 백엔드 웹 개발 핵심 기술 (유료 - 69,300) 김영한님 강의'를 개인적으로 개념정리를 위해 정리한 내용입니다. 프론트 컨트롤러 패턴 소개 FrontController 패턴 특징 프론트 컨트롤러 서블릿 하나로 클라이언트의 요청을 받음 프론트 컨트롤러가 요청에 맞는 컨트롤러를 찾아서 호출 입구를 하나로! 공통 처리 가능 프론트 컨트롤러를 제외한 나머지 컨트롤러는 서블릿을 사용하지 않아도 됨 스프링 웹 MVC와 프론트 컨트롤러 스프링 웹 MVC의 핵심도 바로 FrontController 스프링 웹 MVC의 DispatcherServlet이 FrontController 패턴으로 구현되어 있음 프론트 컨트롤러 도입 - v1 ControllerV1 packag.. 2023. 9. 24.
[인프런 - 스프링 MVC 1편 - 백엔드 웹 개발 핵심 기술] 3장.서블릿, JSP, MVC 패턴 해당 내용은, '인프런 - 스프링 MVC 1편 - 백엔드 웹 개발 핵심 기술 (유료 - 69,300) 김영한님 강의'를 개인적으로 개념정리를 위해 정리한 내용입니다. 회원 관리 웹 애플리케이션 요구사항 회원 저장, 목록 조회 기능 개발 스프링 없이 순수 서블릿만으로 구현 목표 (싱글톤 패턴 활용) 싱글톤 예시 public class Singleton { private static Singleton instance = new Singleton(); private Singleton() { // 생성자는 외부에서 호출못하게 private 으로 지정해야 한다. } public static Singleton getInstance() { return instance; } public void say() { Syst.. 2023. 9. 22.
[인프런 - 스프링 MVC 1편 - 백엔드 웹 개발 핵심 기술] 2장.서블릿 해당 내용은, '인프런 - 스프링 MVC 1편 - 백엔드 웹 개발 핵심 기술 (유료 - 69,300) 김영한님 강의'를 개인적으로 개념정리를 위해 정리한 내용입니다. 프로젝트 생성 사전 준비물 Java 11 설치 IDE: IntelliJ 또는 Eclipse 설치 스프링 부트 스타터 사이트로 이동해서 스프링 프로젝트 생성 https://start.spring.io 스프링 부트 3.0을 선택하게 되면, JAVA 17 사용해야 함 javax 패키지 이름을 jakarta로 변경해야 합니다. 오라클과 자바 라이센스 문제로 모든 javax 패키지를 jakarta로 변경하기로 했습니다. ex) JPA 애노테이션 javax.persistence.Entity → jakarta.persistence.Entity 자세한 내.. 2023. 9. 20.