Определение бинов Spring без конфигурации бинов для каждого класса - PullRequest
1 голос
/ 15 марта 2012

Как можно определить бобы Spring, которым требуется только @Autowired для определения нового бина определенного типа?

Я видел решение, в котором сервисы сервисного уровня создаются без дополнительных определений бинов для нового сервиса. Под определением бина я подразумеваю строку в конфигурационном файле, специфичную для этого сервиса.

Можно ли определить bean-компоненты так, чтобы определенный пакет, например com.foo.bar.service.*, автоматически определялся с добавлением @Autowired при вызове и без определения какой-либо другой конфигурации для класса в этом пакете?

1 Ответ

1 голос
/ 15 марта 2012

Возможно, вы сможете написать свой собственный код, который сканирует пакет Java и добавляет компонент для каждого из найденных классов. Обычно это не то, что требуется, так как многие пакеты имеют вспомогательные классы, которые не должны быть представлены как бины.

Но, скорее всего, у bean-компонентов будет одна из @Component, @Repository, @Service, @Controller аннотаций, и Spring затем зарегистрирует их как bean-компоненты.

http://static.springsource.org/spring/docs/3.0.x/spring-framework-reference/html/beans.html#beans-scanning-filters

...