Java(84)
-
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 -
Java - static(정적)
java에서 변수나 메서드를 선언할 때 static이 붙는 경우가 있다. static은 정적이라는 뜻으로 정적메서드, 정적변수를 선언하면서 사용된다. 정적메서드, 정적변수로 선언을 하게 된다면 모든 객체가 해당 변수, 메서드를 공유 가능하다. 단, 정적 변수, 메서드는 일반 변수, 메서드와 다른 메모리 공간을 사용하기에 정적메서드에서 일반적인 방법으로 일반 변수 및 메서드를 사용 불가하다. 사용하기 위해서는 해당 객체를 호출하고 해당객체.변수명을 통해서 사용 가능하다. 1. 정적 멤버(클래스 멤버)는 static 키워드가 붙은 메소드 및 필드(전역변수)를 의미한다. 2. static은 여러 인스턴스에서 동일한 데이터나 로직을 공유해야 할 때 사용한다. 3. 정적 멤버는 클래스명으로 바로 사용이 가능하다...
2020.08.23