분류 전체보기(129)
-
Spring - Component 자동주입
Component 빈 객체에도 @Autowired,@Qualifier,생성자 등을 이용해 자동주입이 가능하다. 1. @Autowired @Autowired는 타입을 통해서 자동주입을 한다. @Component public class TestBean1 { @Autowired private DataBean1 data3; } 위와 같이 @Autowired를 선언하면 data3에는 DataBean1 객체가 자동으로 주입이 된다. 2. @Qualifier 타입이 아닌 이름을 통해서도 주입이 가능하다. @Component("obj1") public class DataBean2 { } 위와 같이 @Component("obj1")로 설정이 되어있으면 아래와 같이 @Qualifier를 이용해 obj1로 호출이 가능하다...
2020.08.27 -
Spring- Component Bean 기본 설정
Component Bean 에서도 앞서 적용했던 설정들을 @Lazy,@Scope,@PostConstruct,@PreDestroy 등의 어노테이션을 통해 적용 가능하다. 1. @Lazy @Lazy 어노테이션은 해당 클래스를 불러 올 시 자동으로 빈객체가 생성 되는 것을 막고 수동 생성으로만 빈 객체가 생성된다. @Component @Lazy public class TestBean1 { } 2. @Scope 빈 객체는 기본적으로 싱글톤 생성이다. 이런 빈 객체를 @Scope 어노테이션을 통해 prototype으로 설정 가능하다. @Component @Scope("prototype") public class TestBean1 { } 3. @PostConstruct, @PreDestroy @PostConstru..
2020.08.27 -
Spring - Component
@Component 어노테이션을 사용하면 Bean Configuration 파일에 Bean을 등록하지 않아도 자동으로 등록된다. Bean 객체로 사용할 클래스(TestBean1)에 @Component 을 붙여준다. package cookingcoding.beans; import org.springframework.stereotype.Component; @Component public class TestBean1 { } @Component를 붙여주면 해당 객체는 자동으로 Bean 객체로 등록 될 준비가 된다. 해당 빈 객체를 가져오기 위해서 BeanConfigClass 클래스에서 다음 설정을 추가해준다. @ComponentScan(basePackages = "cookingcoding.beans") publ..
2020.08.26 -
Spring - JSR-250 어노테이션
- 스프링에서 기본으로 제공되지는 않지만 자바 플랫폼 공통 어노테이션인 JSR-250을 적용할 수 있다. - 적용을 위해서는 반드시 라이브러리를 추가해야 한다. 1. 라이브러리 추가 https://mvnrepository.com/ Maven Repository: Search/Browse/Explore REST Last Release on Aug 24, 2020 mvnrepository.com 위 사이트에 접속하여 jsr 250을 검색한다. 가장 위에 있는 항목을 선택한다. javax.annotation-api를 선택한다. 버전을 선택한다. 아래 항목을 선택하여 복사한다. 복사한 항목을 pom.xml에 추가한다. 추가한 pom.xml 코드 4.0.0 cookingcoding JSR250 0.0.1-SNAP..
2020.08.25 -
Spring - Annotation을 통한 Bean 설정
Spring 2.5 버전 부터 xml 통한 빈 설정 방법 외에 어노테이션을 이용한 빈 설정 방법을 제공하고 있다. 빈 설정 파일에 다음과 같은 코드를 추가하면 빈에 대한 설정을 xml 파일이 아닌 빈 클래스의 어노테이션을 검색해 반영하게 된다. 새로운 패키지를 생성하고, beans.xml에 다음과 같이 추가해준다. context를 사용하기 위해 이전과 달리 몇 줄의 태그가 추가되었다. 1. @Autowired - 자동주입 @Autowired 어노테이션은 자동으로 자료형을 찾아서 주입되게 된다. TestBean1 클래스에 다음과 같이 data2의 setter에 어노테이션을 설정해주자. //자동주입(타입) @Autowired public void setData2(DataBean1 data2) { this.d..
2020.08.24 -
Java - 추상메서드, 인터페이스
자바의 메서드에는 일반메서드, 정적메서드 그리고 추상메서드가 있다. 세개의 특징을 보면 아래와 같다. 1.일반메서드->객체생성으로 호출가능=>특별한 목적,기능 2.정적메서드->객체생성 없이 호출이 가능->단순,반복,보편적인 기능 3.추상메서드--->1)메서드의 선언만 되어있는 메서드 public abstract void go(); //1) ~메서드명(); ======== abstract public void go(){} //2) ->기능이 없는것 ======== 일반메서드 2)추상메서드선언을 위해 앞에=> abstract 예약어를 써준다. 3)추상메서드를 한개라도 가지고 있는 클래스를 추상클래스라고 한다. =>추상클래스를 일반클래스와 구분 abstract class 클래스명 ** 추상클래스특성 ** 1)..
2020.08.23