Spring удалось Bean делится на две части, одна зарегистрирована Bean, узел Bean.
После этих двух действий, есть три пути, один из способов заключается в использовании автоматической настройки, один JavaConfig способ использовать способ заключается в использовании конфигурации XML.
@Component обычный пружинный POJO инстанцированный в сосуд
@Bean конфигурация требует использования класса, то есть необходимость добавлять аннотации класса @Configuration
Оба они могут быть доступны через автоматическую сборку @Autowired комментария
@Compent и @Bean в конце концов разница между тем, что это?
В процессе разработки приложения, если вы хотите, компоненты библиотеки сторонних производителей, установленные для вашего приложения, в данном случае, нет никакого способа, чтобы добавить аннотации @Component и @Autowired в своем классе, и, следовательно, не может использование автоматизированных программ по сборке.
Но могут быть сконфигурированы или организованы по категориям @Bean в @Configuration через XML
@Component представлять общую ноту, поясняющая класс управления является класс контейнера Spring (обычная точка должна быть повторно инстанцирован контейнер Spring IOC бросить).
@Component более широкого охвата, все классы могут быть аннотированные;
В @Configuration Примечания Общие замечания в классе есть @value аннотированный переменная-член или метод @Bean аннотаций, @ Bean с использованием первичного и @Configuration
Говоря @Component заметки будут думать @ контроллер, @ службы, @Repository
@Component (Common POJO инстанцирован в пружинный контейнер, соответствующий файлу конфигурации <боб ид = «» класс = «» />)
Этикетировочный в сборе для управления слоем @Controller
@Service метка для компонента бизнес-слоя
@Repository для компонента доступа к данным аннотаций
К @ контроллер, @ службы, @Repository три аннотированный исходный код можно увидеть
@ Контроллер, @ службы, @Repository фактически содержит @Component
Эти три аннотированные более @Component семантики, которые соответствуют уровню управления, уровень сервиса, класс живучести слоя.
Для того, чтобы тривиальный пример
При настройке интеграции SSM мы обычно, как такой конфигурации
весна-application.xml 中
<контекст: компонент-сканирования base- пакет = "com.esummer">
<- -扫描注解时忽略@Controller注解!>
<контекст: исключить фильтр типа = "аннотацию" выражение = "org.springframework.stereotype. контроллер»/>
</ контекст: компонент сканирования>
в весенне-mvc.xml
<контекст: компонент-сканирования base- пакет = "com.esummer">
<- -只扫描@Controller注解!>
<контекст: тип включает фильтр = выражение "аннотацию" = "org.springframework.stereotype.Controller" />
</ контекст: компонент сканирования>