В прошлом Java Frameworks в основном использовали XML в качестве файлов конфигурации, но теперь Frameworks Java также поддерживают «нулевую конфигурацию» на основе аннотации вместо файлов конфигурации XML. Struts2, Hibernate и Spring все начали использовать аннотацию вместо файлов конфигурации XML; и Spring3.x предоставляет три варианта, а именно: конфигурация на основе XML, конфигурация на основе аннотаций и конфигурация на основе Java.
Ниже приведены три метода конфигурации; Сначала определите Javabean, например.
пакет com.chinalife.dao public class loginuserdao {... // используется для установки метода инициализации public void myinit () {} // используется для установки метода разрушения public void mydestroy () {}}1. Конфигурация на основе XML
<bean id = "loginuserdao" class = "com.chinalife.dao.impl.loginuserdaoimpl" lazy-init = "true" init-method = "myinit" dross-method = "mydestroy" scope = "Прототип"> </bean>
В конфигурации XML фасоль определяется через <Bean> </bean>, а имя боба определяется через атрибут идентификатора или имени. Если атрибуты идентификатора и имени не указаны, Spring автоматически использует полностью квалифицированное имя класса в качестве имени боба. Введите значение в боб через динамический атрибут детского элемента <protport> или пространства имен P. Вы также можете указать название метода класса реализации Bean с помощью свойств ини-метода и Destory-Method of <Bean> для установки метода жизненного процесса (укажите не более одного метода инициализации и метод уничтожения). Укажите объем бобов через объем <bean>. Я слышал об атрибуте «Ленивый инит» <Fean> указывает, стоит ли задержать инициализацию.
Когда класс реализации бобов поступает из сторонних библиотек классов, таких как данные о данных, HibernateTemplate и т. Д., Он не может аннотировать информацию в классе и может быть настроен только через XML; и конфигурация пространств имен, таких как AOP, контекст и т. Д., Может использовать только конфигурацию на основе XML.
2. Конфигурация на основе аннотаций
@Scope ("Прототип") @lazy (true) @component ("loginuserdao") открытый класс loginuserdao {... // используется для установки метода инициализации @postconstruct public void myinit () {} //В классе реализации бобов некоторые аннотации используются для аннотирования класса бобов:
・ @Component: аннотировать обычный класс Springbean (имя бобов может быть указано, а по умолчанию - имя класса, начинающееся с строчных букв, когда не указано)
・ @Controller: аннотировать класс контроллера
・ @Service: аннотировать класс бизнес -логики
・ @Repository: аннотировать класс DAO
Обозначив @autowired путем подключения к типу в инъекции в переменных члена или параметров метода, вы также можете использовать @qualifier для настройки инъекции по имени. Метод инициализации и метод уничтожения, указанный путем аннотирования аннотации @postconstrut и предсестра (как можно определить многие). Укажите область действия бобов через @Scope («Прототип»). Укажите ленивую загрузку боба, пометив @lazy (true) в определении класса.
Когда класс реализации Bean разрабатывается текущим проектом, вы можете напрямую использовать конфигурацию на основе аннотаций в классе Java, а конфигурация относительно проста.
3. Конфигурация на основе Java
@Configuration public class conf {@scope ("prototype") @bean ("loginuserdao") public loginuserdao loginuserdao () {return new loginuserdao (); }}В классе Java отмечен @configuration, определите бон, аннотируя @bean в методе класса. Методы должны обеспечить логику экземпляров для бобов. Название бобов можно определить через атрибут @bean name. Имя по умолчанию - это имя метода, если оно не указано. При методе используйте @autowired для привязки метода с параметрами, а затем введите его через код в методе; Вы также можете вызвать метод @Bean класса конфигурации для инъекции. Укажите метод инициализации или уничтожения через @Bean's initmethod или Destroymethod. Объем действия бобов определяется определением метода бобов. Укажите инициализацию задержки компонента путем маркировки @lazy в определении метода Бин.
Когда логика создания бобов более сложна, она более подходит для конфигурации класса Java.
Суммировать
Выше приведено все содержание в этой статье о трех методах конфигурации бобов в пружине 3.x. Я надеюсь, что это будет полезно для всех. Заинтересованные друзья могут продолжать ссылаться на другие связанные темы на этом сайте. Если есть какие -либо недостатки, пожалуйста, оставьте сообщение, чтобы указать это. Спасибо, друзья, за вашу поддержку на этом сайте!