tutorial traduccion framework español descargar spring

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.

http://answersz.com/spring-postconstruct-and-predestroy/

¿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.

  1. @PostConstruct es una anotación JSR-250, mientras que init-method es la manera de Spring de tener un método de inicialización.
  2. Si tiene un método @PostConstruct , se llamará primero antes de llamar a los métodos de inicialización.
  3. Si su bean implementa InitializingBean e invalida afterPropertiesSet , primero se llama a @PostConstruct , luego a afterPropertiesSet y luego a init-method .

Para obtener más información, puede consultar la documentación de referencia de Spring.