Developer J

Spring Annotation의 종류와 역할 본문

개발자 되기 part1/Spring

Spring Annotation의 종류와 역할

Developer J 2020. 5. 26. 20:13
반응형

《4개의 stereotype annotation 》
@Component : 클래스에 선언하며 해당 클래스를 자동으로 bean 등록

                    (bean 이름 : 해당클래스 이름, 첫글자는 소문자로 된다.)
@Repository : 일반적으로 dao에 사용
@Service : 비즈니스 클래스에 사용
@Controller : 컨트롤러로 인식

 

@AutoWired

 spring에서 의존관계를 자동으로 설정해 준다. 
 byType으로 의존관계를 자동으로 설정할 경우 같은 타입의 빈이 2개 이상 존재하게 되며 예외 발생
 ->@Qualifier 를 이용하여 특정 빈을 사용하도록 하여 문제 해결 가능
  ex)@Autowired
      @Qualifier("jeon") -> byType으로 검색  중복 있으면  byName으로 검색

@Qualifier : 같은 타입 2개 이상 존재할 경우 특정빈을 사용하도록 선언한다.

 

@Required : 필수 프로퍼티임을 명시하는 것, setter에 붙이면 된다.

@Repository : Dao에 사용, Exception 을 DataAccessException으로 변환

@Service : 해당 어노테이션을 적용한 class는 비즈니스 로직(biz)으로 등록

@Resource : 어플리케이션에서 필요로 하는 자원을 자동으로 연결할 때 사용,
   name 속성에 자동으로 연결될 빈 객체의 이름을 입력한다.(javax.annotation.Resource)
   (byName -> byType)
   ex) @Resource(name="testDao")

반응형