Spring(9)
-
스프링 외부 API 사용하기
01. THe Movie DB API 영화나 tvshow 과련 정보들이 들어있는 사이트 이며 간단한 회원가입과 api_key를 통해서 이용 가능하다. 주소 : https://www.themoviedb.org/ The Movie Database (TMDB) Welcome. Millions of movies, TV shows and people to discover. Explore now. www.themoviedb.org 02. 사용할 THE Movie DB API Request URL https://api.themoviedb.org/3/discover/movie?api_key=키 Response 위 request url과 response data를 통해서 api는 아주 잘 작동하는 것을 알 수 있다. 0..
2021.10.22 -
Spring + JPA 프로젝트 더미 데이터 만들기
01. 연습환경 Spring Boot Spring Web H2 Database JPA java 11 02. 연습 Model 유저 1 : 게시판 n 게시판 1 : 댓글 n 유저 1 : 댓글 n 관계이다. User.java @Entity @NoArgsConstructor public class User { // ID가 자동으로 생성 및 증가합니다. @GeneratedValue(strategy = GenerationType.AUTO) @Id private Long id; // nullable: null 허용 여부 // unique: 중복 허용 여부 (false 일때 중복 허용) @Column(nullable = false, unique = true) private String username; @Column(..
2021.10.05 -
07. Spring MVC
Spring 프레임워크에서 제공하는 웹 모듈이다. MVC 는 Model-View-Controller 의 약자로, 기본 시스템 모듈을 MVC 로 나누어 구현되어있다. Model 은 '데이터' 디자인을 담당한다. ex. 상품 목록, 주문 내역 등 View 는 '실제로 렌더링되어 보이는 페이지' 를 담당한다. ex. .JSP, .html 파일들이 여기에 해당된다. Controller 는 사용자의 요청을 받고, 응답을 주는 로직을 담당한다. ex. GET 등의 uri 매핑이 여기에 해당된다. Spring MVC 모듈을 사용하여, 백엔드 프로그래밍의 기본 프레임워크를 잡는다. Web 서버에 특화되어 만들어진 모듈이라, 개발자가 해야할 영역을 더 적게 만들어준다. 즉 기존에 Spring 보다 더 깔끔하고 간편하게 ..
2021.10.03 -
06. 의존관계 자동 주입
다양한 의존관계 주입 방법 생성자 주입 setter 주입 필드 주입 일반 메서드 주입 생성자 주입 생성자를 통해서 의존관계를 주입 받는 방법이다. 특징 생성자 호출시점에 딱 1번만 호출되는 것이 보장된다. 불변, 필수 의존관계에 사용 @Component public class OrderServiceImpl implements OrderService { private final MemberRepository memberRepository; private final DiscountPolicy discountPolicy; @Autowired public OrderServiceImpl(MemberRepository memberRepository, DiscountPolicy discountPolicy) { thi..
2021.09.27 -
05. 컴포넌트 스캔
지금까지 포스팅에서 스프링 빈을 등록할 때는 자바 코드의 @Bean이나 XML의 등을 통해서 설정 정보에 직접 등록할 스프링 빈을 나열했다. 스프링은 설정 정보가 없어도 자동으로 스프링 빈을 등록하는 컴포넌트 스캔이라는 기능을 제공한다. 의존관계도 자동으로 주입하는 @Autowired 라는 기능도 제공한다. 지금까지는 우리는 수동으로 AppConfig.java파일을 통해 수동으로 빈을 등록하였다. 자동으로 빈을 등록해주는새로운 AutoAppConfig.java를 구현해보자 AutoAppConfig.java @Configuration @ComponentScan public class AutoAppConfig { } 컴포넌트 스캔을 사용하기 위해 @ComponentScan 애노테이션을 붙여주면 된다. 기존의..
2021.09.27 -
04. Bean
Bean Spring IoC 컨테이너가 관리하는 자바 객체를 빈(Bean)이라는 용어로 부른다. 우리가 new 연산자로 어떤 객체를 생성했을 때 그 객체는 빈이 아니다. ApplicationContext.getBean()으로 얻어질 수 있는 객체는 빈이다. 즉 Spring에서의 빈은 ApplicationContext가 알고있는 객체, 즉 ApplicationContext가 만들어서 그 안에 담고있는 객체를 의미한다. 앞선 포스팅된 순수 자바 코드로 작성된 DI를 스프링에 적용해보자 AppConfig 스프링 기반으로 변경 @Configuration public class AppConfig { @Bean public Computer computer() { return new ComputerImpl(keyBo..
2021.09.26