здесь говорится, что
Я бы не рекомендовал использовать интерфейс InitializingBean и DisposableBean, потому что он будет тесно связан с кодом Spring.
Имеет ли это смысл? Я думал, что это будет прямо противоположно жесткой связи.
здесь говорится, что
Я бы не рекомендовал использовать интерфейс InitializingBean и DisposableBean, потому что он будет тесно связан с кодом Spring.
Имеет ли это смысл? Я думал, что это будет прямо противоположно жесткой связи.
Здесь автор имеет в виду, что если вы позволяете своим классам приложений реализовывать интерфейсы InitializingBean и DisposableBean (которые являются интерфейсами, специфичными для Spring), то вы связываете свой код с spring. В будущем, если Spring переименует эти интерфейсы (хотя маловероятно) или вы перестанете использовать Spring, вам придется обновить код класса.
Вместо этого, если вы используете атрибуты init-method и destroy-method в конфигурации bean-компонента, ваш класс не зависит от Spring, т. е. ваш класс не зависит от конкретных классов Spring.
Надеюсь, поможет.
you stop using spring you will have to update your class code.
Тогда разве @PostConstruct and @PreDestroy
не будет ли тесно связанный код с Spring?
- person ; 22.03.2018
Я думаю, что идея здесь состоит в том, чтобы не создавать никакой зависимости от вашего кода для пружинных аннотаций, см.
import org.springframework.beans.factory.DisposableBean;
import org.springframework.beans.factory.InitializingBean;
Когда вы явно объявляете такую зависимость, вы связываете свой код с пружинными банками.
В этом другом примере — http://www.mkyong.com/spring/spring-init-method-and-destroy-method-example/ — здесь показано, как можно использовать условные методы, определенные в XML. Весеннего импорта нет.