Home
동준이 블로그
Cancel

[자바의 정석] 연산자

연산자의 종류 종류 연산자 설명       산술 연산자 + - * / & « » 사칙연산과 나머지 연산       비교 연산자 ...

[자바의 정석] 변수

변수란? 단 하나의 값을 저장할 수 있는 메모리 공간 하나의 변수에 단 하나의 값만 저장할 수 있으므로, 새로운 값을 저장하면 기존의 값은 사라진다. 변수의 선언과 초기화 변수선언 : 변수타입 변수이름 ex) int age; 변수선언은, 메모리의 빈 공간에 변수타입에 맞게 알맞은 크기의 저장공간이 확보되고...

[자바의 정석] 자바를 시작하기 전에

자바란? 자바는 객체지향 프로그래밍 언어로, 자바의 가장 중요한 특징 중 하나로 운영체제에 독립된 언어로 프로그램을 작성할 수 있다는 것이다. JVM(Java Vitrtual Machine) 자바를 실행하기 위한 가상 기계로, 자바로 작성된 어플리케이션은 모두 이 가상 컴퓨터(JVM)에서만 실행되기 때문에 자바 어플리케이션이 실행되기 위해서는...

[Spring] 빈 스코프

빈 스코프란? 빈이 존재할 수 있는 범위를 뜻한다. 스프링은 다음과 같은 다양한 스코프를 지원한다. 싱글톤: 기본 스코프, 스프링 컨테이너의 시작과 종료까지 유지되는 가장 넓은 범위의 스코프이다. 프로토타입: 스프링 컨테이너는 프로토타입 빈의 생성과 의존관계 주입까지만 관여하고 더는 관리하지 않는 매우 짧은 범위의 스코프이다. 웹...

[Spring] 빈 생명주기 콜백

빈 생명주기 콜백 스프링 빈은 간단하게 다음과 같은 라이프사이클을 가진다. 객체 생성 → 의존관계 주입 스프링 빈은 객체를 생성하고, 의존관계 주입이 다 끝난 다음에야 필요한 데이터를 사용할 수 있는 준비가 완료된다. 따라서 초기화 작업은 의존관계 주입이 모두 완료되고 난 다음에 호출해야 한다. 그런데 개발자가 의존관계 주입이...

[Spring] 의존관계 자동주입

다양한 의존관계 주입 방법 생성자 주입 수정자 주입(setter 주입) 필드 주입 일반 메서드 주입(잘 사용 X) 생성자 주입 @Component public class OrderServcieImpl implements OrderService { private final MemberRepository memberRep...

[Spring] 컴포넌트 스캔

컴포넌트 스캔과 의존관계 자동 주입 시작하기 스프링 빈을 @Bean을 사용하여 스프링 컨테이너에 등록했지만, 만약 등록해야 할 빈이 수백개가 넘는다면 설정 정보도 커지고, 누락하는 문제도 발생할 수 있다. 이 때문에 스프링은 자동으로 스프링 빈을 등록하는 컴포넌트 스캔이라는 기능을 제공한다. 또 의존관계도 자동으로 주입하는 @Auto...

[Spring] 싱글톤 컨테이너

웹 애플리케이션과 싱글톤 웹 어플리케이션 구조에서 고객은 보통 동시에 요청이 온다. 순수한 DI 컨테이너는 요청이 올때마다 객체를 새로 생성해서 반환해주게 된다. 스프링없는 순수한 DI컨테이너 테스트 public class SingletonTest { @Test @DisplayName("스프링 없는 순수한 DI 컨테이너")...

[Spring] 컨테이너와 빈

스프링 컨테이너 생성 ApplicationContext applicationContext = new AnnotationConfigApplicationContext(AppConfig.class); ApplicationContext를 스프링 컨테이너라고 한다. 스프링 컨테이너 생성 과정 new AnnotationConfi...

[Spring] 이해를 위한 예제

비즈니스 요구사항 회원 회원을 가입하고 조회할 수 있다. 회원은 일반과 VIP 등급이 있다. 회원 데이터는 자체 DB를 구축할 수 있고, 외부 시스템과 연동할 수 있다. 회원 클래스 다이어그램 회원 객체 다이어그램 주문 회원은 상품을 주문할 수 있...