[Spring MVC] 기본 기능 - 요청 매핑
Back-End/Spring2024. 2. 20. 00:47[Spring MVC] 기본 기능 - 요청 매핑

이 글은 인프런 김영한님의 Spring 강의를 바탕으로 개인적인 정리를 위해 작성한 글입니다. @RestController 특정 클래스를 RESTful 웹 서비스의 컨트롤러로 지정한다. 이 어노테이션을 사용한 클래스는 HTTP 요청을 처리하는 핸들러 메소드를 포함하며, 각 메소드는 특정 HTTP 요청(예: GET, POST, DELETE 등)에 매핑된다. @RestController는 @Controller 와 유사하지만, 차이점은 @RestController 로 지정된 컨트롤러의 메소드가 기본적으로 HTTP 응답 본문(Body)에 직접 데이터를 작성한다는 점이다.이는@ResponseBody 어노테이션을 모든 핸들러 메소드에 적용한 것과 같은 효과를 가진다. @Controller 는 반환 값이 String..

[Spring] Logging
Back-End/Spring2024. 2. 19. 20:09[Spring] Logging

이 글은 인프런 김영한님의 Spring 강의를 바탕으로 개인적인 정리를 위해 작성한 글입니다. 운영 시스템에서는 System.out.println() 같은 시스템 콘솔을 사용해서 필요한 정보를 출력하지 않고, 별도의 로깅 라이브러리를 사용해서 로그를 출력한다. 스프링 부트 라이브러리를 사용하면 스프링 부트 로깅 라이브러리(spring-boot-starter-logging)가 함께 포함된다. 스프링 부트 로깅 라이브러리는 기본으로 다음 로깅 라이브러리를 사용한다. SLF4J - http://www.slf4j.org Logback - http://logback.qos.ch 로그 라이브러리는 Logback, Log4J, Log4J2 등등 수 많은 라이브러리가 있는데, 그것을 통합해서 인터페이스로 제공하는 것이..

[Spring MVC] 스프링 MVC - 구조 이해
Back-End/Spring2024. 2. 18. 20:44[Spring MVC] 스프링 MVC - 구조 이해

이 글은 인프런 김영한님의 Spring 강의를 바탕으로 개인적인 정리를 위해 작성한 글입니다. 2024.02.17 - [Java Category/JSP] - JSP와 서블릿을 이용한 MVC 프레임워크 만들기 JSP와 서블릿을 이용한 MVC 프레임워크 만들기 이 글은 인프런 김영한님의 Spring 강의를 바탕으로 개인적인 정리를 위해 작성한 글입니다. Model, View, Controller 컨트롤러: HTTP 요청을 받아서 파라미터를 검증하고, 비즈니스 로직을 실행한다. 그 rebugs.tistory.com 위 글과 이어진 내용입니다. JSP로 만든 MVC 프레임워크와 스프링 MVC 프레임워크의 구조가 매우 비슷하다는 것을 알 수 있다. 핵심은 FrontController와 DispatcherServl..

[Spring MVC] 웹 어플리케이션의 이해
Back-End/Spring2024. 2. 13. 00:52[Spring MVC] 웹 어플리케이션의 이해

이 글은 인프런 김영한님의 Spring 강의를 바탕으로 개인적인 정리를 위해 작성한 글입니다. 웹 서버, 웹 애플리케이션 서버 웹은 HTTP 프로토콜 기반으로 통신하여 데이터를 주고받는다. HTML, TEXT IMAGE, 음성, 영상, 파일 JSON, XML (API) 등 웹 서버 (Web Server) HTTP 기반으로 동작 정적 리소스 제공, 기타 부가기능 정적 (파일) HTML, CSS, JS, 이미지, 영상 NGINX, APACHE 등이 웹 서버로 사용 웹 애플리케이션 서버 WAS (Wep Application Server) HTTP 기반으로 동작 웹 서버 기능 + 프로그램 코드 실행하여 애플리케이션 로직 수행 동적 HTML, HTTP API(JSON), 서블릿, JSP, 스프링 MVC 톰캣, J..

[Spring 핵심원리 - 기본] Bean Scope
Back-End/Spring2024. 2. 3. 00:14[Spring 핵심원리 - 기본] Bean Scope

이 글은 인프런 김영한님의 Spring 강의를 바탕으로 개인적인 정리를 위해 작성한 글입니다. 빈 스코프 스프링 빈은 기본적으로 싱글톤으로 생성되고, 싱글톤 스코프이기 때문에 스프링 컨테이너의 시작과 함께 스프링 컨테이너가 종료될 때 까지 유지된다. 스코프는 번역 그대로 빈이 존재할수 있는 범위를 뜻한다. 스프링은 다음과 같은 다양한 스코프를 지원한다. 싱글톤: 기본 스코프, 스프링 컨테이너의 시작과 종료까지 유지되는 가장 넓은 범위의 스코프 프로토타입: 스프링 컨테이너는 프로토타입 빈의 생성과 의존관계 주입까지만 관여하고 더는 관리하지 않는 매우 짧은 범위의 스코프 웹 관련 스코프 request: 웹 요청이 들어오고 나갈때 까지 유지되는 스코프 session: 웹 세션이 생성되고 종료될 때 까지 유지되..

[Spring 핵심원리 - 기본] Bean 생명주기 콜백
Back-End/Spring2024. 2. 2. 00:24[Spring 핵심원리 - 기본] Bean 생명주기 콜백

이 글은 인프런 김영한님의 Spring 강의를 바탕으로 개인적인 정리를 위해 작성한 글입니다. Bean 생명주기 콜백 데이터베이스 커넥션 풀이나, 네트워크 소켓처럼 애플리케이션 시작 시점에 필요한 연결을 미리 해두고, 애플리케이션 종료 시점에 연결을 모두 종료하는 작업을 진행하려면, 객체의 초기화와 종료 작업이 필요하다. 간단하게 외부 네트워크에 미리 연결하는 객체를 하나 생성한다고 가정해보자. 실제로 네트워크에 연결하는 것은 아니고, 단순히 문자만 출력하도록 한다. 이 NetworkClient 는 애플리케이션 시작 시점에 connect() 를 호출해서 연결을 맺어두어야 하고, 애플리케이션이 종료되면 disConnect() 를 호출해서 연결을 끊어야 한다. package hello.core.lifecyc..

[Spring 핵심원리 - 기본] 의존관계 자동 주입
Back-End/Spring2024. 2. 1. 00:27[Spring 핵심원리 - 기본] 의존관계 자동 주입

이 글은 인프런 김영한님의 Spring 강의를 바탕으로 개인적인 정리를 위해 작성한 글입니다. 다양한 의존관계 주입 방법 생성자 주입 이름 그대로 생성자를 통해서 의존 관계를 주입 받는 방법이다. 생성자 호출시점에 딱 1번만 호출되는 것이 보장된다. 불변, 필수 의존관계에 사용 @Component public class OrderServiceImpl implements OrderService { private final MemberRepository memberRepository; private final DiscountPolicy discountPolicy; @Autowired public OrderServiceImpl(MemberRepository memberRepository, DiscountPol..

[Spring 핵심원리 - 기본] 컴포넌트 스캔
Back-End/Spring2024. 1. 31. 00:53[Spring 핵심원리 - 기본] 컴포넌트 스캔

이 글은 인프런 김영한님의 Spring 강의를 바탕으로 개인적인 정리를 위해 작성한 글입니다. 이 글은 어노테이션 개념이 많이 포함하고 있습니다. 아래의 글을 먼저 읽고오면 도움이 됩니다. 2023.07.23 - [Java Category/Java] - [JAVA] 리플렉션(Reflection)과 어노테이션(Annotation) [JAVA] 리플렉션(Reflection)과 어노테이션(Annotation) 이 게시글은 이것이 자바다(저자 : 신용권, 임경균)의 책과 동영상 강의를 참고하여 개인적으로 정리하는 글임을 알립니다. 리플렉션 리플렉션이란 실행 도중에 타입(클래스, 인터페이스 등)을 rebugs.tistory.com 컴포넌트 스캔과 의존관계 자동 주입 이전까지 스프링 빈을 등록할 때는 자바 코드의 ..

image