스프링 기초
![](https://img1.daumcdn.net/thumb/R750x0/?scode=mtistory2&fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FbKxoTM%2FbtrQf36N0lC%2F8nFKxWE9Pl8MoYqUlfpeXK%2Fimg.png)
(스프링 기본) 9. 빈 스코프
이 글은 김영한 님의 스프링 핵심 원리 - 기본편 강좌 수강 후 정리한 글입니다. https://www.inflearn.com/course/스프링-핵심-원리-기본편/dashboard 스프링 핵심 원리 - 기본편 - 인프런 | 강의 스프링 입문자가 예제를 만들어가면서 스프링의 핵심 원리를 이해하고, 스프링 기본기를 확실히 다질 수 있습니다., - 강의 소개 | 인프런... www.inflearn.com 빈 스코프란? 스코프는 빈이 존재할 수 있는 범위를 뜻한다. 스프링이 지원하는 빈 스코프들은 다음과 같다. 1. 싱글톤: 기본 스코프, 스프링 컨테이너의 시작과 종료까지 유지되는 가장 넓은 범위의 스코프이다. 2. 프로토타입: 스프링 컨테이너는 프로토타입 빈의 생성과 의존관계 주입까지만 관여하고 더는 관리하..
![](https://img1.daumcdn.net/thumb/R750x0/?scode=mtistory2&fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2F3UNQe%2FbtrPYEMDwed%2F2pp7OmMj5mrJnS8ClctaP1%2Fimg.png)
(스프링 기본) 7. 의존관계 자동 주입
이 글은 김영한 님의 스프링 핵심 원리 - 기본편 강좌 수강 후 정리한 글입니다. https://www.inflearn.com/course/스프링-핵심-원리-기본편/dashboard 스프링 핵심 원리 - 기본편 - 인프런 | 강의 스프링 입문자가 예제를 만들어가면서 스프링의 핵심 원리를 이해하고, 스프링 기본기를 확실히 다질 수 있습니다., - 강의 소개 | 인프런... www.inflearn.com 다양한 의존관계 주입 방법 의존관계 주입 방법에는 4가지가 존재한다. 생성자 주입 수정자 주입 (setter 주입) 필드 주입 일반 메서드 주입 ● 생성자 주입 이름에서 알 수 있듯이 생성자를 통해서 의존관계를 주입받는다. 생성자 호출 시점에 딱 한 번 실행되는 것이 보장되기 때문에, 불변이나 필수 의존관계..
![](https://img1.daumcdn.net/thumb/R750x0/?scode=mtistory2&fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FCASsO%2FbtrPE5ZrDXm%2FTt40Bg4W22Jmhde7IKFlL0%2Fimg.png)
(스프링 기본) 6. 컴포넌트 스캔
이 글은 김영한 님의 스프링 핵심 원리 - 기본편 강좌 수강 후 정리한 글입니다. https://www.inflearn.com/course/스프링-핵심-원리-기본편/dashboard 스프링 핵심 원리 - 기본편 - 인프런 | 강의 스프링 입문자가 예제를 만들어가면서 스프링의 핵심 원리를 이해하고, 스프링 기본기를 확실히 다질 수 있습니다., - 강의 소개 | 인프런... www.inflearn.com 컴포넌트 스캔과 의존관계 자동 주입 시작하기 지금까지는 자바 코드의 @Bean을 활용하여 설정 정보에 직접 등록할 빈을 나열하였다. 만약 빈의 개수가 매우 많아지면 이 작업은 너무 귀찮고, 누락의 위험성 또한 존재한다. 그래서 스프링은 설정 정보가 없어도 자동으로 스프링 빈을 등록하는 컴포넌트 스캔을 제공한..
![](https://img1.daumcdn.net/thumb/R750x0/?scode=mtistory2&fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FbU5tOs%2FbtrN5amMFqY%2Fs02oGmx4tkYBER9tmPkUWk%2Fimg.png)
(스프링 기본) 5. 싱글톤 컨테이너
이 글은 김영한 님의 스프링 핵심 원리 - 기본편 강좌 수강 후 정리한 글입니다. https://www.inflearn.com/course/스프링-핵심-원리-기본편/dashboard 스프링 핵심 원리 - 기본편 - 인프런 | 강의 스프링 입문자가 예제를 만들어가면서 스프링의 핵심 원리를 이해하고, 스프링 기본기를 확실히 다질 수 있습니다., - 강의 소개 | 인프런... www.inflearn.com 웹 애플리케이션과 싱글톤 스프링은 태생부터 기업용 온라인 서비스를 지원하기 위해 탄생하였다. 대부분의 스프링 애플리케이션은 웹 애플리케이션이다. 물론 웹이 아닌 일반 애플리케이션 개발도 충분히 가능하다. 보통 웹 애플리케이션은 위 그림처럼 여러 고객이 동시에 요청을 한다. 만약 세 명의 클라이언트가 동시에 ..
![](https://img1.daumcdn.net/thumb/R750x0/?scode=mtistory2&fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FsozMV%2FbtrNOKhCBLV%2F0VanjHkDUotvdi4MaX1g81%2Fimg.png)
(스프링 기본) 4. 스프링 컨테이너와 스프링 빈
이 글은 김영한 님의 스프링 핵심 원리 - 기본편 강좌 수강 후 정리한 글입니다. https://www.inflearn.com/course/스프링-핵심-원리-기본편/dashboard 스프링 핵심 원리 - 기본편 - 인프런 | 강의 스프링 입문자가 예제를 만들어가면서 스프링의 핵심 원리를 이해하고, 스프링 기본기를 확실히 다질 수 있습니다., - 강의 소개 | 인프런... www.inflearn.com 스프링 컨테이너 생성 스프링 컨테이너가 생성되는 과정을 알아보겠다. ApplicationContext ac = new AnnotationConfigApplicationContext(AppConfig.class); ApplicationContext를 스프링 컨테이너라 한다. ApplicationContext는..
![](https://img1.daumcdn.net/thumb/R750x0/?scode=mtistory2&fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2Fwh6AS%2FbtrNvPrn51n%2FmO2VJoLljvx6JyZ96GyCX0%2Fimg.png)
(스프링 기본) 3. 스프링 핵심 원리 이해 2 - 객체 지향 원리 적용
이 글은 김영한 님의 스프링 핵심 원리 - 기본편 강좌 수강 후 정리한 글입니다. (https://www.inflearn.com/course/스프링-핵심-원리-기본편/dashboard) 스프링 핵심 원리 - 기본편 - 인프런 | 강의 스프링 입문자가 예제를 만들어가면서 스프링의 핵심 원리를 이해하고, 스프링 기본기를 확실히 다질 수 있습니다., - 강의 소개 | 인프런... www.inflearn.com 새로운 할인 정책 개발 저번에 개발한 할인 정책이 정말 객체지향 설계 원칙을 잘 준수했는지 확인해보자. 이번에는 고정 금액 할인이 아닌 정률(%) 할인 정책을 추가할 것이다. 1. RateDiscountPolicy 추가 저번에 고정 금액 할인 정책인 FixDiscountPolicy를 구현했으므로 이번엔 ..
![](https://img1.daumcdn.net/thumb/R750x0/?scode=mtistory2&fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FHetYU%2FbtrNdS77gF6%2FxnT5nKPlPp4v2CyTAURAkK%2Fimg.png)
(스프링 기본) 2. 스프링 핵심 원리 이해 1 - 예제 만들기
이 글은 김영한 님의 스프링 핵심 원리 - 기본편 강좌 수강 후 정리한 글입니다. (https://www.inflearn.com/course/스프링-핵심-원리-기본편/dashboard) 스프링 핵심 원리 - 기본편 - 인프런 | 강의 스프링 입문자가 예제를 만들어가면서 스프링의 핵심 원리를 이해하고, 스프링 기본기를 확실히 다질 수 있습니다., - 강의 소개 | 인프런... www.inflearn.com 프로젝트 생성 https://start.spring.io/에서 다음과 같이 설정 한 뒤 압축 해제 후에 Intellij에서 실행한다. 여기서는 순수 자바의 역량을 보여주기 위해서 어떠한 외부 Dependecies도 추가하지 않고 진행하였다. 비즈니스 요구 사항과 설계 요구사항을 보면 회원 데이터, 할인 ..
![](https://img1.daumcdn.net/thumb/R750x0/?scode=mtistory2&fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FcuVtEN%2FbtrMWQDGwJ1%2FySDsmVcleglPYrtTJZxDM1%2Fimg.png)
(스프링 기본) 1. 객체 지향 설계와 스프링
이 글은 김영한 님의 스프링 핵심 원리 - 기본편 강좌 수강 후 정리한 글입니다. (https://www.inflearn.com/course/스프링-핵심-원리-기본편/dashboard) 스프링 핵심 원리 - 기본편 - 인프런 | 강의 스프링 입문자가 예제를 만들어가면서 스프링의 핵심 원리를 이해하고, 스프링 기본기를 확실히 다질 수 있습니다., - 강의 소개 | 인프런... www.inflearn.com 스프링이란? 1. 스프링 생태계 2. 스프링 프레임워크 핵심 기술 : 스프링 DI 컨테이너, AOP, 이벤트 등 웹 기술 : 스프링 MVC, 스프링 WebFlux 데이터 접근 기술: 트랜잭션, JDBC, ORM 지원, XML 지원 기술 통합: 캐시, 이메일, 원격 접근, 스케줄링 테스트: 스프링 기반 테..
![](https://img1.daumcdn.net/thumb/R750x0/?scode=mtistory2&fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FcTYcnM%2FbtrMXISlwfo%2FQTH7gify6GIplKOM7rsHnk%2Fimg.png)
(스프링 입문) 7. AOP
이 글은 김영한 님의 스프링 입문 강좌 수강 후에 정리한 글입니다. (https://www.inflearn.com/course/스프링-입문-스프링부트/dashboard) AOP ● AOP가 필요한 상황 지금까지 구현한 회원 가입, 회원 조회 기능들의 소요 시간을 체크해보려고 한다. MemberService 회원 조회 시간 측정 추가 package hello.hellospring.service; import hello.hellospring.domain.Member; import hello.hellospring.repository.MemberRepository; import org.springframework.transaction.annotation.Transactional; import java.util...
![](https://img1.daumcdn.net/thumb/R750x0/?scode=mtistory2&fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FqfbA2%2FbtrMUMN7BBy%2FPu9oo4oTKDDY10C72GoGD1%2Fimg.png)
(스프링 입문) 6. 스프링 DB 접근 기술
이 글은 김영한 님의 스프링 입문 강좌 수강 후에 정리한 글입니다. (https://www.inflearn.com/course/스프링-입문-스프링부트/dashboard) 스프링 DB 접근 기술 ● H2 데이터베이스 설치 H2 DB는 개발 및 테스트 용도로 사용하며, 가볍고 편리한 DB이다. 웹 화면도 제공한다. 다운로드 : https://www.h2database.com H2 Database Engine (redirect) H2 Database Engine Welcome to H2, the free SQL database. The main feature of H2 are: It is free to use for everybody, source code is included Written in Java, ..