본문 바로가기
반응형

spring 기초21

[spring framework 기초] spring 컨테이너의 종류(spring 기본 및 이론) spring 에는 두가지 로딩방식이 있습니다. 1. 즉지 로딩 방식(pre-loading) 2. 지연 로딩 방식(lazy-loading) 그럼 하나하나 알아볼께요. 1. 즉시 로딩 방식 쉽게 컨테이너가 구동되는 시점에 으로 등록된 클래스들의 객체를 생성하는 방식입니다. spring컨테이너의 종류로는 ApplicationContext컨테이너가 있어요. 대부분 이방식을 사용하는데, 그 이유는 객체 관리를 제외하고 트랜잭션관리나 웹 애플리케이션 개발을 지원하기 때문에 주로 이 방식을 사용합니다. 2. 지연 로딩 방식 지연 로딩 방식은 컨테이너가 구동될때 객체를 생성하는 것이 아닌, 클라이언트의 look up이 있을때만 생성합니다. 해당 방식은 우리가 전에 사용했던 BeanFactory 컨테이너가 있습니다. A.. 2022. 1. 30.
[spring framework]스프링 프레임워크 DI_의존성주입_setter인젝션(5) 앞서 우리는 DI는 생성자를 기반으로 하는 생성자 인젝션과 setter를 기반으로 하는 setter인젝션이 있다고 배웠습니다. 그럼 중간에 다중변수나 의존관계주입은 뭐냐 라고 하실수 있는데, 그건 DI를 할 수 있도록 방법입니다. 방법이라는 말이 안맞긴 하지만, DI를 할때 하나의 생성자만 만들거나? 아니면 하나의 값만 인자로 넘기는것이 아니죠? 여러 생성자를 만들어야하고, 다양한 데이터값을 인자로 전달을 하기위한 방법을 소개한것입니다. 그리고 오늘 DI setter를 기반으로 하는 setter인젝션을 배워볼거예요. 기본적으로 setter인젝션을 하기위해 setter메소드를 추가 하도록 하겠습니다. 코드를 설명하기 앞서 유사한 코드는 지우고 시작하시는게 좋아요. 우리는 크게 powerOn,powerOff.. 2022. 1. 30.
[Spring framework] 스프링 프레임워크 - 의존관계 변경_의존성 주입(3) 우리는 지난번까지 하나의 speaker를 사용했습니다. 하지만 앞서 tv를 처음만들때도 문제가 생겼죠. 바로 다른 speaker로 교체를 위해서는 코드를 수정하느냐, 아니냐로 말이죠 의존성 주입은 그런 상황에서 아주 효과적이게 처리를 할 수 있게 도와줍니다. 현재 sonyspeaker가 있으니 하나의 speaker를 추가하기 위해 Speaker인터페이스를 추가 하도록 하겠습니다. Speaker인터페이스를 하나 만들었습니다. 그리고 우리는 또하나의 Speaker를 만드려 합니다. LgTV만들었을때 처럼요. Speaker인터페이스를 상속하는 AppleSpeaker를 만들었습니다. 그리고 또하나 작업을 해야하는거 안잊으셨죠? 기존 sonySpeaker에도 인터페이스를 상속시켜줘야합니다. 이제 Speaker를 .. 2022. 1. 29.
[spring framework]스프링 프레임워크 DI_의존성주입_다중 변수 맵핑(3) 지난번에 생성자 인젝션을 배웠습니다. 컨테이너는 기본적으로 bean에 등록된 순서대로 객체를 생성하고, 기본 생성자를 호출하게 되어 있습니다. 그럼 순서대로 객체를 생성한다고 했는데, 초기화해야할 멤버변수가 여러개 일때는 어떡해야 할까요? 여러개일때는 당연히 여러개의 값을 한번에 주면 해결이 되겠죠. 한번 해볼까요? SamsungTV클래스에 위를 추가해줍니다. 자 새로운 단어가 보이죠? price라는것이 새로 생겼습니다. 그럼 맨위에 price를 사용한다고 선언을 해줘야 합니다. 위 사진을 보면 private int price를 추가했습니다. 그리고 xml에 변수에 추가한 만큼 엘리먼트를 추가해 주려 합니다. 위와 같이 엘리먼트를 추가해 줍니다. 위에는 없지만 처럼 앞에 id를 적어줘야 합니다! 그리고 .. 2022. 1. 28.
반응형