В веб-приложении, использующем конфигурацию xml, вы указываете в web.xml
, где ваш контекст приложения так Spring может создать ваши компоненты. Используя @Configuration
, он просматривает все пакеты, которые ищут эту аннотацию?Как создана Spring @Configuration?
ответ
@ComponentScan
Пожалуйста, используйте аннотацию с @Configuration
указать базовый пакет, в котором пружина будет выглядеть, чтобы создать бобы.
Ниже приведено описание использования @ComponentScan
аннотации на уровне класса.
@ComponentScan(basePackages = "basepackageName",
excludeFilters =
@ComponentScan.Filter(value = Controller.class,
type = FilterType.ANNOTATION)
реализует также интерфейс WebApplicationInitializer и OnStartup() в его инициализации AnnotationConfigWebApplicationContext и зарегистрировать класс конфигурации, как показано ниже
AnnotationConfigWebApplicationContext context = new AnnotationConfigWebApplicationContext(); context.register(Configuration.class);
здесь класса конфигурации является содержащий @Configuration. -
Необходимо указать пакет для сканирования в конфигурационном файле весны.
Как это:
<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"
xsi:schemaLocation="http://www.springframework.org/schema/beans
http://www.springframework.org/schema/beans/spring-beans-2.5.xsd
http://www.springframework.org/schema/context
http://www.springframework.org/schema/context/spring-context-2.5.xsd">
<context:component-scan base-package="your.package" />
</beans>
Так, по крайней мере, я должен иметь это в xml? Тогда для меня нет смысла иметь аннотацию @ComponentScan, она будет reduntant – Oscar
Если вы используете @ComponentScan, тогда вам не нужна конфигурация xml. Вы не сказали, где его использовать :) – Jkike
Но если вы используете @ComponentScan, как он будет обнаружен в первую очередь? – Oscar
- 1. spring-security & spring-mvc configuration
- 2. convert spring xml configuration to java configuration
- 3. Spring multiple @Configuration classes
- 4. Spring JdbcTemplate ConnectionPooling Configuration
- 5. Свойства с Spring @Configuration
- 6. Spring security UserDetailsService configuration
- 7. spring 2.0 security configuration
- 8. Java Spring ApplicationContext Configuration
- 9. Spring MVC xml configuration
- 10. Spring 4 entityManager configuration
- 11. Spring Social XML configuration
- 12. JPA Spring MVC configuration
- 13. Spring ReloadableResourceBundleMessageSource configuration
- 14. Spring-context configuration - namespace
- 15. Spring security + spring social xml configuration
- 16. Репозиторий Inject Spring в Spring @Configuration class
- 17. Spring Batch partitioning -Queue configuration
- 18. Togglz with Spring @Configuration bean
- 19. JUnit test spring-integration configuration
- 20. Spring Annotation Configuration Not Starting
- 21. auth Spring security java configuration
- 22. ActiveMQ nonBlockingRedelivery broker/Spring configuration
- 23. Spring Camel Email Configuration Issue
- 24. о spring social xml configuration
- 25. Недостатки использования класса Spring @Configuration
- 26. Spring @Configuration в отдельном классе
- 27. spring boot mongodb xml configuration
- 28. Как ссылается кеширование Spring @Configuration на beans
- 29. Как использовать @Configuration и @EnableScheduling вместе с Spring Spring
- 30. Spring boot application.yml configuration bugging out
, но как @Configuration сканируется в первую очередь? – Oscar
используйте интерфейс WebApplicationInitializer и переопределите его onStartup(). Там, где вы должны инициализировать AnnotationConfigWebApplicationContext, которые инструктируют Spring использовать конфигурацию на основе аннотаций. например AnnotationConfigWebApplicationContext context = new AnnotationConfigWebApplicationContext(); context.register (Configuration.class); здесь Класс конфигурации содержит @Configuration. –
Вместо того, чтобы сбрасывать код в комментариях, добавьте их в ответ. –