detalle de configuración de la primavera y el springboot

  1. interfaz Application Context BeanFactory es una extensión del ,, además de los servicios DI, Application Context también proporciona fuente de noticias y sucesos de la aplicación manejo de los asuntos, servicios de AOP, la internacionalización y así sucesivamente.
  2. <Contexto: componente de exploración> etiqueta le dice código de primavera de exploración para encontrar maquinaria usada @ componentes, @ Controller, @ Serivice, @ repositorio de anotación de inyección de frijol, así como apoyar el uso de @ Autowired en un paquete determinado, @ Inyectar, @ anotación de recursos frijol.
  3. clase @Configuration anotación se utiliza para especificar la clase de configuración, el método puede ser utilizado en este tipo de anotación @Bean;
  4. @ComponentScanning anotación es una configuración de clase Java, y <context: componente-scan> Del mismo modo la etiqueta;
  5. JDK @Resource anotación es en sí viene, a requerimiento de soporte parámetro de nombre de DI más fino; se proporciona primavera anotación @Autowired, @ Autowired utiliza la reflexión para llenar la dependencia requerida;
  6. @Service es un caso especial de @Component, @ VER anotada clases están proporcionando servicios de negocio a otras capas de la aplicación;
  7. Encuentra método (Método de Inyección de búsqueda) campañas de inyección @Lookup es encontrar un método único caso comunicado que devuelve una instancia de la no-Singleton Bean. CGLIB resorte usa para generar una subclase objeto de la clase para anular dinámicamente este método;
  8. Alternativamente método MethodReplacer implementado por la interfaz, en sustitución de cualquier método en el objetivo, que en realidad se utiliza CGLIB realización;
  9. @Autowired inyectado con @Qualifier anotación especifica el nombre de frijol específico;
  10. Frijol reglas de nomenclatura: Identificación de conjunto para el frijol, el nombre bean id, si ningún id, miradas de resorte para el atributo de nombre (el primer valor, el nombre se puede ajustar en más de un nombre), si los atributos id y name no son establecidas, será el nombre de la clase como su nombre;
  11. Si hay dos nombres diferentes de frijol del proyecto, pero el uso de la misma clase, como foo y SuperFoo, si desea citar cambiado SuperFoo foo, puede eliminar SuperFoo el grano, a continuación, añadir una SuperFoo alias detrás del nombre foo;
  12. alcance Por defecto, todos frijol de primavera son única forma de realización, se pueden utilizar se establece el prototipo (patrones prototipo) y similares;
  13. el resorte de prototipo (patrones prototipo) que representa a cada programa de aplicación solicita la instancia del bean crea la instancia de una nueva instancia de la judía;
  14. Al elegir un solo ejemplo:
    1. Ningún estado de los objetos compartidos;
    2. Sólo el objeto compartido leer estado;
    3. Tener unos objetos compartidos estatales compartidos;
    4. Estado de alto rendimiento objetivo ha escrito (un gran número de aplicaciones para crear un objeto, se puede utilizar el modo de escritura síncrona estado de control)
  15. Ejemplos de ámbitos de frijol
    1. Singleton alcance
    2. alcance prototipo
    3. solicitud alcance
    4. ámbito de sesión (http solicitud con la acción bean de sesión)
    5. ámbito de sesión global
    6. ámbito hilo
    7. ámbitos personalizados
  16. secuencia de inyección dispuesto de acuerdo con la necesidad cuando la configuración xml haba, para evitar un caso en el que el grano no inicializado, haba llevado a cabo por otra inyección;
  17. Si el grano no está configurado de acuerdo con la orden cuando la inyección de configuración XML, la implantación se puede realizar mediante la disposición de un grano dependiente depende-en indicador (especificado por el frente de frijol dependiente depende-en grano de atributo, haba dependiente de pre-creado antes de la presente ejemplo de la haba bueno), tenemos que prestar atención para hacer una Abean depende de otro Bbean, Abean necesidad de implementar interfaces de ApplicationContextAware;
  18. ApplicationContextAware interfaz proporciona una característica tiene una interfaz de primavera, todo recipiente de granos de primavera detectará el contenedor, a continuación, si nos encontramos con implementos de frijol ApplicationContextAware las interfaces, contenedor primavera va a crear el Bean, automáticamente llamar al método setApplicationContextAware del Bean (), llame al cuando el método, el recipiente en sí se variable de instancia applicationContext como un parámetro para el método, mientras que asigna a ese objeto, por lo que la siguiente se puede acceder por el propio buque applicationContext variable de instancia, el proceso se completa después de constructor bean llamada a.
  19. bean montaje automático puede configurar el Autowire automático modo de ensamblaje = "Byname" en xml
    1. modo byname
    2. por tipo
    3. constructor
    4. El modo por defecto
    5. no
  20. Para una clase bean tiene dos configuraciones, puede ser añadido en una bandera de configuración bean primaria, que ha sido ajustado de frijol (un tipo diferente del mismo nombre) que se utiliza preferentemente, por ejemplo, una clase A, dos bean configurado en XML, respectivamente beanName de a1, a2, pero el uso del código inyectado: a Private una ; por defecto la byType este caso, no se encuentran dos condiciones se encuentran implantación, se puede resolver utilizando el caso primario;
  21. Para producen 20 casos, también se puede utilizar @Autowired inyecta con @Qualifier anotación especifica el nombre de frijol específico;
  22. init-método, método de realizar la inicialización de la clase especificada en el XML de configuración
  23. notificación de finalización de resorte bean interfaz InitializingBean, la interfaz se puede obtener se ha configurado, es decir, la información puede ser obtenida para toda la primavera haba, un valor por defecto se puede ajustar o detección de configuración bean bean es correcta;
  24. anotación @PostConstruct aplicarse métodos similares init-método
  25. @Bean (initMethod = "init") De manera similar xml configuración init-método
  26. orden de carga de la haba
    1. En primer lugar, llamar al constructor para crear el frijol
    2. dependencias de nota (setter movilizado)
    3. Ahora frijol ya existe y proporciona dependencias, frijol preinicializada BeanPostProcessor base institucional se consultará a comprobar para ver si quieren llamar a la tarea algo (notas @PostConstruct) creado a partir del frijol
    4. interfaz InitializingBean implementado afterPropertiesSet () para realizar la dependencia inmediatamente después de la inyección;
    5. Por último, la aplicación de la propiedad init-método, ya que es el método de inicialización real del frijol;
  27. interfaz BeanNameAware, el método de los implementos clase de interfaz setBeanName, los valores se puede obtener por este método beanName, valores de configuración se pueden conseguir cuando registro de impresión beanName como parte del registro para facilitar la consulta;
  28. ApplicationContextAware interfaz mediante la implementación de esta interfaz se puede obtener de banda bean configuración ejemplo de aplicación ApplicationContext, la razón de esta interfaz se crea con el fin de permitir el acceso a bean ApplicationContext en aplicaciones de primavera, como objeto de bean se obtiene por el método getBean nombre especificado.
  29. FactoryBean interfaz que actúa como un adaptador de primavera no puede utilizar la semántica estándar de creación y gestión de objetos; FactoryBean pueden acceder automáticamente a los recursos en la transacción y el contexto JNDI proxy.

Supongo que te gusta

Origin www.cnblogs.com/use-D/p/12634039.html
Recomendado
Clasificación