Spring 에서 자주 사용 하 는 주해 에 대한 상세 한 소개

4474 단어 Spring상용 주해
spring 에서 주 해 를 사용 할 때 파일 의 쓰기 설정:

<?xml version="1.0" encoding="UTF-8"?> 
<span style="font-size:18px;"><beans xmlns="http://www.springframework.org/schema/beans" 
 xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" 
 xmlns:context="http://www.springframework.org/schema/context" 
 xmlns:aop="http://www.springframework.org/schema/aop" 
 xsi:schemaLocation=" 
 http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans-3.0.xsd 
 http://www.springframework.org/schema/context http://www.springframework.org/schema/context/spring-context-3.0.xsd 
 http://www.springframework.org/schema/aop http://www.springframework.org/schema/aop/spring-aop-3.0.xsd 
 http://www.springframework.org/schema/util http://www.springframework.org/schema/util/spring-util-3.0.xsd"> 
 
 <aop:aspectj-autoproxy/> 
 <context:annotation-config/> 
 <context:component-scan base-package="com.test" /> 
</beans> 
설정 항목 은 지정 한 가방 을 스 캔 하여 주입 에 의존 하도록 설정 합 니 다.
다음은 흔히 볼 수 있 는 주해 의 사용 을 소개 한다.

@Autowired 
private IReportService reportService ; 
Spring 2.5 는@Autowired 주 해 를 도입 하여 클래스 구성원 변수,방법 및 구조 함 수 를 표시 하여 자동 조립 작업 을 완성 할 수 있 습 니 다.또한,@Autowired 를 통 해 get,set 방법 을 제거 할 수 있 습 니 다.@Autowired 는 유형 에 따라 자동 으로 전 배 됩 니 다.
@Resource 도 자동 조립 이 가능 하지만@Resource 는 기본적으로 이름 에 따라 자동 조립 이 됩 니 다.
여기 서 유형 에 따라 조립 하 는 것 이 무엇 인지,이름 에 따라 조립 하 는 것 이 무엇 인지 간단하게 소개 합 니 다.
유형 이란 Spring 용기 에 지정 한 속성 유형 과 같은 bean 이 존재 하면 이 속성 을 자동 으로 조립 하 는 것 입 니 다.이 유형의 bean 이 여러 개 존재 하면 이상 이 발생 하고 유형 에 따라 자동 으로 조립 할 수 없다 고 지적 합 니 다.일치 하 는 bean 을 찾 지 못 하면 아무 일 도 일어나 지 않 습 니 다.
이름,즉 속성 명 에 따라 자동 으로 조립 하 는 것 입 니 다.이 항목 은 Spring 용기 에서 이 속성 명 과 완전히 일치 하 는 bean 을 검사 하여 자동 으로 조립 합 니 다.

@Component("reportAction") 
@Scope("request") 
public class ReportAction extends AbstractBaseAction 
@Component 주석(아래 설명 은 공식 문서 에서)
@Component,@Service,@Controller.@Component 는 모든 Spring 관리 구성 요소 의 일반적인 형식 입 니 다.
 한편,@Repository,@Service 와@Controller 는@Component 의 세분 화 로 더욱 구체 적 인 사례(예 를 들 어 지구 화 층,서비스 층 과 표현 층 에 대응)를 나타 낸다.즉,당신 은@Component 로 구성 요소 류 를 설명 할 수 있 습 니 다.
 그러나@Repository,@Service 또는@Controller 로 설명 하면 클래스 가 도구 로 처리 되 거나 절단면 과 연 결 될 수 있 습 니 다.
예 를 들 어 이런 전형 적 인 주 해 는 이상 적 인 착안점 목표 가 될 수 있다.물론 Spring Framework 이후 버 전에 서 는@Repository,@Service,@Controller 가 더 많은 의 미 를 가 질 수 있 습 니 다.이렇게 되면 서비스 층 에서@Component 를 사용 해 야 할 지@Service 를 사용 해 야 할 지 고려 하고 있다 면,
 그@Service 는 분명히 더 좋 은 선택 이다.마찬가지 로 앞에서 말 한 것 처럼@Repository 는 지구 화 층 에서 이상 전환 을 할 때 태그 로 사용 할 수 있 습 니 다.
  @Scope()는 bean 의 역할 영역 을 지정 합 니 다.

@Scope("prototype")주석
    Spring 용 기 는 prototype 형식의 대상 을 출력 할 때 요청 자 에 게 새로운 대상 을 다시 생 성 합 니 다.이러한 유형의 대상 의 예화 와 속성 설정 은 Spring 용기 에 의 해 이 루어 지지 만 준비 가 완료 되 고 대상 인 스 턴 스 가 요청 자 에 게 돌아 가면 용 기 는 현재 대상 의 인용 을 가지 지 않 습 니 다.요청 자 는 이 대상 의 폐 기 를 포함 하여 현재 대상 의 후계 생명주기 관 리 를 스스로 해 야 한다.가장 전형 적 인 사례 는 Spring 용기 와 Struts 2 를 통합 할 때 action 의 scope 를 prototype 으로 바 꾸 는 것 이다.
@Scope("singleton")주석
이 값 은 용기 에 하나의 인 스 턴 스 만 존재 한 다 는 것 을 나타 내 며,모든 참조 bean 은 하나의 인 스 턴 스 입 니 다.이것 이 바로 전형 적 인 단일 모델 이다.
@Scope("request")주석

      Spring 용기,즉 XmlWebApplication Context 는 모든 새로운 RequestPrecessor 로 돌아 갑 니 다.요청 이 끝나 면 대상 의 수명 주기 가 끝 납 니 다.100 개의 Http 요청 이 동시에 발 송 될 때 용 기 는 각각 요청 마다 서로 다른 RequestPrecessor 인 스 턴 스 를 만 듭 니 다.이들 은 서로 간섭 하지 않 습 니 다.쉽게 말 하면 request 는 prototype 의 특례 로 볼 수 있 습 니 다.request 의 응용 장면 은 더욱 구체 적 이 고 다른 것 은 거의 다 르 지 않 습 니 다.
@Scope("session")주석
  웹 애플 리 케 이 션 에 있어 session 에서 가장 많이 놓 인 것 은 사용자 의 로그 인 정보 입 니 다.session 에 놓 인 정보 에 대해 scope 의 유형 을 session 으로 바 꿀 수 있 습 니 다.Spring 용 기 는 모든 독립 된 session 에 자신 만 의 새로운 UserPreference 인 스 턴 스 를 만 들 고 request 유형의 bean 보다 더 오래 생존 할 수 있 습 니 다.다른 부분 은 거의 다 르 지 않 습 니 다.자바 웹 의 session 과 유사 합 니 다.
  마지막 으로 왜@Respository 는 Dao 층 에 만 표시 되 는 지 말씀 드 리 겠 습 니 다.이것 은 Spring 이 제공 하 는 이 주 해 는 클래스 를 Bean 으로 식별 할 뿐만 아니 라 동시에
읽 어 주 셔 서 감사합니다. 여러분 에 게 도움 이 되 기 를 바 랍 니 다.본 사이트 에 대한 여러분 의 지지 에 감 사 드 립 니 다!

좋은 웹페이지 즐겨찾기