2012-04-11 1 views
-1

왜 autowiring이 필요한가 ...? 아무도 내게 autowiring의 개념을 설명 할 수 ....? 스프링 프레임 워크왜 autowiring이 필요합니까? 아무도 내게 autowiring의 개념을 설명 할 수 있습니까?

+1

누가 그렇게 우스운 진실을 말합니까? – vacuum

+0

@ vacuum ... 나는이 프레임 워크에 익숙하지 않다. 모든 예제에서 몇 가지 예를 언급하고 있었다. autowire 어노테이션이 사용된다 .. 그래서 나는 그 manadory를 생각했다. – jayjay

답변

0

Autowiring은에서

@Autowired 주석은 단지 편리 필요하지 않습니다.

InterfaceA을 필요로하는 속성이 있고 스프링으로 선언 된 단일 bean이 InterfaceA 인 경우 XML을 사용하여 관계를 수동으로 "연결"합니다 (bean 참조를 다른 것의 속성), Spring이 당신을 위해 배선을하도록 할 수 있습니다.

+0

@benny : thanks – jayjay

0

이것은 초보자에게 자주 묻는 질문입니다. 빈이 DI (setter 감염, 생성자 주입)를 사용하여 주입되므로 자동 배선이 필요한 이유는 무엇입니까? 자동 배선도 똑같은 일을 하죠, 그렇죠?

대답은 더 많은 코드를 작성하지 않아도된다는 것입니다.

1- xml 파일을 사용하면 거기에 배선 코드를 작성하지 않아도됩니다. 빈의 autowire 속성을 사용하여 필요한 기능을 수행합니다.

아래 코드를 살펴보십시오. 자동 배선없이

구성 코드 : 자동 배선

<bean id="employee" class="com.Employee"> 
    <property name="name" value="Dexter"></property> 
</bean> 

<bean id="employeeService" class="com.EmployeeService"> 
    <property name="employee" ref="employee"></property> 
</bean> 

구성 코드 : 우리는 EmployeeService 즉 직원의 속성을 참조 할 수 아무것도 작성하지 않은

<bean id="employee" class="com.Employee"> 
    <property name="name" value="Dexter"></property> 
</bean> 

<bean id="employeeService" class="com.EmployeeService" autowire="byName" /> 

참고. 그러나 아직도 주사되었습니다. Autowiring은 컨테이너가 Bean 구성을 검색하고 Bean 간의 공동 작업을 수행하며 개발자는이를 구체적으로 언급하지 않습니다. 우리가 주석을 사용하는 경우

2, 심지어 우리는 등이 autoware = "요소 별명"간단히 빈의 세터/필드에 @Autowired/생성자을 포함하여 XML 파일에 아무것도 쓸 필요 없다 충분하다.

그러나 @AutoWired 필드는 필드 주입을 도입하므로주의해야합니다. 이는 일을하는 권장 방법이 아닙니다.

관련 문제