Spring17 [Spring] @PathVariable 사용법 REST API에서 URL의 값을 처리하려면 어떻게 해야 할까? http://localhost:8080/mapping/userA userA라는 값을 url에서 가져오고 싶을 때 @PathVariable을 이용하면 쉽게 처리할 수 있다. @PathVariable 사용법 @GetMapping("/mapping/{userId}") public String mappingPath(@PathVariable("userId") String data) { log.info("mappingPath userId={}", data); return "ok"; } @PathVariable의 이름과 url의 괄호 안의 이름이 같은 경우 data에 해당 값을 저장한다. @GetMapping("/mapping/{userId}") pub.. 2023. 1. 10. [Spring] 스프링 MVC의 구조 MVC 패턴 MVC 패턴이란 애플리케이션을 구성하는 요소를 역할에 따라 Model, View, Controller로 나누어 구분한 패턴이다. 2023.01.04 - [Spring] - [Spring] MVC 패턴 [Spring] MVC 패턴 MVC 패턴이란 MVC는 Model, View, Controller의 약자로 애플리케이션을 개발할 때 구성요소를 3가지의 역할로 구분한 것을 말한다. MVC 패턴의 탄생 배경 MVC 패턴 이전에는 비즈니스 로직과 뷰 로직을 같 dangdangee.tistory.com 스프링 MVC 웹 계층에 서블릿 API를 기반으로 클라이언트의 요청을 처리하는 모듈이다. Model, View, Controller로 역할을 분리해 각자의 영역에 집중하여 효율적으로 개발이 가능하다. 스.. 2023. 1. 9. [Spring] MVC 패턴 MVC 패턴이란 MVC는 Model, View, Controller의 약자로 애플리케이션을 개발할 때 구성요소를 3가지의 역할로 구분한 것을 말한다. MVC 패턴의 탄생 배경 MVC 패턴 이전에는 비즈니스 로직과 뷰 로직을 같이 두는 방식으로 개발을 하였다. 하지만 다음과 같이 개발할 경우 여러 문제점이 있었다. 너무 많은 역할 하나의 서블릿이나 JSP만으로 비즈니스 로직과 뷰 로직을 모두 처리하게 된다면, 너무 많은 역할을 하게 되고 유지보수도 어려워진다. 변경의 라이프 사이클 보통 비즈니스 로직과 뷰 로직의 수정은 각각 다르게 발생할 경우가 많기 때문에 유지보수하기가 어려워진다. 기능 특화 JSP 같은 뷰 템플릿은 화면을 렌더링 하는데 최적화되어 있기 때문에 뷰만 관리하는 것이 효과적이다. 따라서 M.. 2023. 1. 4. [Spring] 빈 생명주기 콜백 데이터베이스 커넥션 풀이나, 네트워크 소켓처럼 애플리케이션 시작 시점에 필요한 연결을 미리 해두고, 애플리케이션 종료 시점에 연결을 모두 종료하는 작업을 진행하려면, 객체의 초기화와 종료 작업이 필요하다. 스프링 빈의 라이프사이클 스프링 빈은 간단하게 다음과 같은 라이프 사이클을 가진다. 객체생성 -> 의존관계 주입 따라서 초기화 작업은 의존관계 주입이 끝난 후에 수행되어야 한다. 그럼 어떻게 의존관계 주입이 끝난 시점을 알 수 있을까? 스프링은 의존관계 주입이 완료되면 스프링 빈에게 콜백 메서드를 통해서 초기화 시점을 알려주는 다양한 기능을 제공한다. 또한 스프링은 스프링 컨테이너가 종료되기 직전에 소멸 콜백을 준다 스프링 빈의 이벤트 라이프사이클 스프링 컨테이너 생성 -> 스프링 빈 생성 -> 의존관.. 2022. 12. 28. [Spring] 같은 타입으로 조회된 빈이 여러 개일 경우 @Autowired는 타입으로 빈을 조회한다. 만약 같은 타입으로 등록된 빈이 여러 개가 있을 경우 어떻게 될까? @Component public class FixDiscountPolicy implements DiscountPolicy {} @Component public class RateDiscountPolicy implements DiscountPolicy {} DiscountPolicy의 하위 타입인 FixDiscountPolicy와 RateDiscountPolicy 모두 스프링 빈으로 등록을 하였다. @Autowired private DiscountPolicy discountPolicy 이 상황에서 DiscountPolicy에 자동 주입을 실행하면 NoUniqueBeanDefinitionExce.. 2022. 12. 28. [Spring] 의존관계 자동 주입 의존관계 주입은 크게 4가지 방법이 있다. 생성자 주입 수정자 주입(setter 주입) 필드 주입 일반 메서드 주입 생성자 주입 생성자를 통해서 의존관계를 주입받는 방법이다. @Component public class OrderServiceImpl implements OrderService { private final MemberRepository memberRepository; private final DiscountPolicy discountPolicy; @Autowired public OrderServiceImpl(MemberRepository memberRepository, DiscountPolicy discountPolicy) { this.memberRepository = memberReposi.. 2022. 12. 27. 이전 1 2 3 다음