traduccion - Spring @PostConstruct vs. atributo init-method
spring tutorial (3)
@postconstruct no es parte de la primavera. Es parte del paquete javax. Ambos son lo mismo. usando init-method necesitamos agregarlo en el archivo xml. Si usas @postconstruct no es necesario agregar xml. Mira el artículo a continuación.
¿Hay alguna diferencia entre utilizar la anotación @PostConstruct y declarar el mismo método que init-method en la configuración Spring XML?
No hay diferencia real. Se trata de cómo prefieres configurar tu sistema, y esa es una cuestión de elección personal. Yo prefiero usar @PostConstruct anotaciones @PostConstruct para mi propio código (ya que el bean solo se configura correctamente después de llamar al método) y uso init-method al crear instancias de beans de bibliotecas que no sean Spring-aware (no se pueden aplicar anotaciones allí , por supuesto!) pero puedo entender totalmente a las personas que quieren hacerlo de una forma u otra.
Prácticamente no creo que haya ninguna diferencia, pero hay prioridades en la forma en que funcionan. @PostConstruct , init-method son BeanPostProcessors.
-
@PostConstructes una anotación JSR-250, mientras queinit-methodes la manera de Spring de tener un método de inicialización. - Si tiene un método
@PostConstruct, se llamará primero antes de llamar a los métodos de inicialización. - Si su bean implementa InitializingBean e invalida
afterPropertiesSet, primero se llama a@PostConstruct, luego aafterPropertiesSety luego ainit-method.
Para obtener más información, puede consultar la documentación de referencia de Spring.