SlideShare une entreprise Scribd logo
1  sur  24
Curso de Spring
Introducción a la Inyección de
Dependencias
jbugarin@consultorjava.com
@jlbugarin
AGENDA
• ¿Qué es y por que Inyección de Dependencias
(ID).
• Inyección de Dependencias en Spring
Framework.
• ID Parámetros.
• Bean Naming.
Inyección de Dependencias /
Dependency Injection
• El rey de la inverion de control (IoC)
• Principio Hollywood
– No me llames, yo te llamare

• El contenedor de inyeccion de Dependencias
resuelve la dependencia de componentes
mediante wiring / injecting un objeto.
• Martin Fowler es el que acuño el termino
¿Por qué Inyección de
Dependencias?
• Flexible
– No hay necesidad de tener un código de búsqueda en la
lógica de negocio.
• Testeable
– No se necesita un espacio especifico de testeo
– Testeo automático como parte de las construcciones
• Mantenible
– Permite la reutilización en diferentes entornos de
aplicaciones modificando los archivos de configuración en
lugar del código.
– Promueve un enfoque coherente en todos aplicaciones y
equipos
2 Variantes de Inyección de
Dependencias

• Inyección de Dependencias por constructor
– La dependencia se da a través de l constructor de
una clase

• Inyección de Dependencias por setter
– Las dependencias se proporcionan a través de los
métodos de una clase al estilo JavaBean.
– Es mas popular la inyección de dependencias por
constructor.
Ejemplo
Ejemplo
Clases para la Inyección de
Dependencias en Spring
• BeanFactory Interface
• Clases de Implementación
– XMLBEANFACTORY
– CLASSPATHAPPLOCATION CONTEXT
Ejemplo de Referencia
Ejemplo de Referencia
Ejemplo de Referencia
Archivo de configuración de beans
Beans Configuration File
• El bean se define dentro del tag <bean> y este
tag esta dento de la raiz <beans>.
• El atributo id, se usa para darle el nombre al
bean.
• El atributo class, se usa para indicarle la clase
que tiene un id para poderlo inyectar.
Ejemplo de Configuración
Ejemplo de Referencia – Setter ID
Ejemplo de Referencia – DI
Constructor
Ejemplo Referencia - DI
Constructor
BEANS
• El termino bean es usado para referirnos a
cualquier componente administrado por el
BeanFactory.
• Beans es lo mismo que un Java Bean.
• Propiedades / atributos de los beans son
simples o valrores que hacen referencia a
otros beans.
• Los Beans pueden tener multiples nombres
DI PARAMETERS TYPES
• Spring soporta los siguientes parametros de
inyeccion:
– Valores Simples
– Beans
– Collecciones / Listas

• Estos parametros se usan para inyeccion de
setter o de constructor.
Inyección de Valores Simples
Inyección de Beans
• Se usa cuando necesitas inyectar un bean en otro.
• Ambos beans deben de estar declarados para que puedan
funcionar.
• Declarar la inyección con usando el tag ref.
• El tipo que se inyecta no tiene que ser e tipo exacto definido
en la referencia.
– Si el tipo definido en el objetivo es una interfaz, el tipo
inyectado debe ser una implementación de ella.
– Si el tipo definido en el objetivo es una clase, el tipo
inyectado puede ser del mismo tipo o subtipo.
Ejemplo Inyección de Beans
Ejemplo de inyección de beans
Ejemplo de Bean Naming
Ing. Jose Luis Bugarin – jbugarin@consultorjava.com - @jlbugarin

GRACIAS!

Contenu connexe

Tendances

Instalacion y uso basico de Jenkins
Instalacion y uso basico de JenkinsInstalacion y uso basico de Jenkins
Instalacion y uso basico de JenkinsMoisés Elías Araya
 
클라우드 마이그레이션 성공적인 여정, 그 중요한 시작 "Readiness Assessment (전환 준비 평가)" - 김준범, AWS Mi...
클라우드 마이그레이션 성공적인 여정, 그 중요한 시작 "Readiness Assessment (전환 준비 평가)" - 김준범, AWS Mi...클라우드 마이그레이션 성공적인 여정, 그 중요한 시작 "Readiness Assessment (전환 준비 평가)" - 김준범, AWS Mi...
클라우드 마이그레이션 성공적인 여정, 그 중요한 시작 "Readiness Assessment (전환 준비 평가)" - 김준범, AWS Mi...Amazon Web Services Korea
 
[AWS Dev Day] 앱 현대화 | AWS Fargate를 사용한 서버리스 컨테이너 활용 하기 - 삼성전자 개발자 포털 사례 - 정영준...
[AWS Dev Day] 앱 현대화 | AWS Fargate를 사용한 서버리스 컨테이너 활용 하기 - 삼성전자 개발자 포털 사례 - 정영준...[AWS Dev Day] 앱 현대화 | AWS Fargate를 사용한 서버리스 컨테이너 활용 하기 - 삼성전자 개발자 포털 사례 - 정영준...
[AWS Dev Day] 앱 현대화 | AWS Fargate를 사용한 서버리스 컨테이너 활용 하기 - 삼성전자 개발자 포털 사례 - 정영준...Amazon Web Services Korea
 
Introduction to Service Oriented Architecture
Introduction to Service Oriented ArchitectureIntroduction to Service Oriented Architecture
Introduction to Service Oriented ArchitectureDATA Inc.
 
ADF Bindings & Data Controls
ADF Bindings & Data ControlsADF Bindings & Data Controls
ADF Bindings & Data ControlsRohan Walia
 
MSA(Service Mesh), MDA(Data Mesh), MIA(Inference Mesh) 기술동향 소개-박문기@메ᄀ...
MSA(Service Mesh), MDA(Data Mesh), MIA(Inference Mesh) 기술동향 소개-박문기@메ᄀ...MSA(Service Mesh), MDA(Data Mesh), MIA(Inference Mesh) 기술동향 소개-박문기@메ᄀ...
MSA(Service Mesh), MDA(Data Mesh), MIA(Inference Mesh) 기술동향 소개-박문기@메ᄀ...문기 박
 
Deep-Dive to Application Insights
Deep-Dive to Application Insights Deep-Dive to Application Insights
Deep-Dive to Application Insights Gunnar Peipman
 
Microservices with Java, Spring Boot and Spring Cloud
Microservices with Java, Spring Boot and Spring CloudMicroservices with Java, Spring Boot and Spring Cloud
Microservices with Java, Spring Boot and Spring CloudEberhard Wolff
 
[오픈소스컨설팅]클라우드자동화 및 운영효율화방안
[오픈소스컨설팅]클라우드자동화 및 운영효율화방안[오픈소스컨설팅]클라우드자동화 및 운영효율화방안
[오픈소스컨설팅]클라우드자동화 및 운영효율화방안Ji-Woong Choi
 
REST APIs with Spring
REST APIs with SpringREST APIs with Spring
REST APIs with SpringJoshua Long
 
Use Elastic Beanstalk Blue/Green Deployment to Reduce Downtime & Risk (DEV330...
Use Elastic Beanstalk Blue/Green Deployment to Reduce Downtime & Risk (DEV330...Use Elastic Beanstalk Blue/Green Deployment to Reduce Downtime & Risk (DEV330...
Use Elastic Beanstalk Blue/Green Deployment to Reduce Downtime & Risk (DEV330...Amazon Web Services
 
Reactive programming by spring webflux - DN Scrum Breakfast - Nov 2018
Reactive programming by spring webflux - DN Scrum Breakfast - Nov 2018Reactive programming by spring webflux - DN Scrum Breakfast - Nov 2018
Reactive programming by spring webflux - DN Scrum Breakfast - Nov 2018Scrum Breakfast Vietnam
 
Real-time Data Processing with Amazon DynamoDB Streams and AWS Lambda
Real-time Data Processing with Amazon DynamoDB Streams and AWS LambdaReal-time Data Processing with Amazon DynamoDB Streams and AWS Lambda
Real-time Data Processing with Amazon DynamoDB Streams and AWS LambdaAmazon Web Services
 
Docker 사내교육 자료
Docker 사내교육 자료Docker 사내교육 자료
Docker 사내교육 자료Juneyoung Oh
 
Look at Oracle Integration Cloud – its relationship to ICS. Customer use Case...
Look at Oracle Integration Cloud – its relationship to ICS. Customer use Case...Look at Oracle Integration Cloud – its relationship to ICS. Customer use Case...
Look at Oracle Integration Cloud – its relationship to ICS. Customer use Case...Phil Wilkins
 

Tendances (20)

Instalacion y uso basico de Jenkins
Instalacion y uso basico de JenkinsInstalacion y uso basico de Jenkins
Instalacion y uso basico de Jenkins
 
클라우드 마이그레이션 성공적인 여정, 그 중요한 시작 "Readiness Assessment (전환 준비 평가)" - 김준범, AWS Mi...
클라우드 마이그레이션 성공적인 여정, 그 중요한 시작 "Readiness Assessment (전환 준비 평가)" - 김준범, AWS Mi...클라우드 마이그레이션 성공적인 여정, 그 중요한 시작 "Readiness Assessment (전환 준비 평가)" - 김준범, AWS Mi...
클라우드 마이그레이션 성공적인 여정, 그 중요한 시작 "Readiness Assessment (전환 준비 평가)" - 김준범, AWS Mi...
 
[AWS Dev Day] 앱 현대화 | AWS Fargate를 사용한 서버리스 컨테이너 활용 하기 - 삼성전자 개발자 포털 사례 - 정영준...
[AWS Dev Day] 앱 현대화 | AWS Fargate를 사용한 서버리스 컨테이너 활용 하기 - 삼성전자 개발자 포털 사례 - 정영준...[AWS Dev Day] 앱 현대화 | AWS Fargate를 사용한 서버리스 컨테이너 활용 하기 - 삼성전자 개발자 포털 사례 - 정영준...
[AWS Dev Day] 앱 현대화 | AWS Fargate를 사용한 서버리스 컨테이너 활용 하기 - 삼성전자 개발자 포털 사례 - 정영준...
 
Image Optimization in Drupal
Image Optimization in DrupalImage Optimization in Drupal
Image Optimization in Drupal
 
Introduction to Service Oriented Architecture
Introduction to Service Oriented ArchitectureIntroduction to Service Oriented Architecture
Introduction to Service Oriented Architecture
 
Azure storage deep dive
Azure storage deep diveAzure storage deep dive
Azure storage deep dive
 
Spring framework 3
Spring framework 3Spring framework 3
Spring framework 3
 
ADF Bindings & Data Controls
ADF Bindings & Data ControlsADF Bindings & Data Controls
ADF Bindings & Data Controls
 
MSA(Service Mesh), MDA(Data Mesh), MIA(Inference Mesh) 기술동향 소개-박문기@메ᄀ...
MSA(Service Mesh), MDA(Data Mesh), MIA(Inference Mesh) 기술동향 소개-박문기@메ᄀ...MSA(Service Mesh), MDA(Data Mesh), MIA(Inference Mesh) 기술동향 소개-박문기@메ᄀ...
MSA(Service Mesh), MDA(Data Mesh), MIA(Inference Mesh) 기술동향 소개-박문기@메ᄀ...
 
Deep-Dive to Application Insights
Deep-Dive to Application Insights Deep-Dive to Application Insights
Deep-Dive to Application Insights
 
Introducción a AWS y la Nube
Introducción a AWS y la NubeIntroducción a AWS y la Nube
Introducción a AWS y la Nube
 
Microservices with Java, Spring Boot and Spring Cloud
Microservices with Java, Spring Boot and Spring CloudMicroservices with Java, Spring Boot and Spring Cloud
Microservices with Java, Spring Boot and Spring Cloud
 
[오픈소스컨설팅]클라우드자동화 및 운영효율화방안
[오픈소스컨설팅]클라우드자동화 및 운영효율화방안[오픈소스컨설팅]클라우드자동화 및 운영효율화방안
[오픈소스컨설팅]클라우드자동화 및 운영효율화방안
 
REST APIs with Spring
REST APIs with SpringREST APIs with Spring
REST APIs with Spring
 
Use Elastic Beanstalk Blue/Green Deployment to Reduce Downtime & Risk (DEV330...
Use Elastic Beanstalk Blue/Green Deployment to Reduce Downtime & Risk (DEV330...Use Elastic Beanstalk Blue/Green Deployment to Reduce Downtime & Risk (DEV330...
Use Elastic Beanstalk Blue/Green Deployment to Reduce Downtime & Risk (DEV330...
 
Reactive programming by spring webflux - DN Scrum Breakfast - Nov 2018
Reactive programming by spring webflux - DN Scrum Breakfast - Nov 2018Reactive programming by spring webflux - DN Scrum Breakfast - Nov 2018
Reactive programming by spring webflux - DN Scrum Breakfast - Nov 2018
 
CloudFormation Best Practices
CloudFormation Best PracticesCloudFormation Best Practices
CloudFormation Best Practices
 
Real-time Data Processing with Amazon DynamoDB Streams and AWS Lambda
Real-time Data Processing with Amazon DynamoDB Streams and AWS LambdaReal-time Data Processing with Amazon DynamoDB Streams and AWS Lambda
Real-time Data Processing with Amazon DynamoDB Streams and AWS Lambda
 
Docker 사내교육 자료
Docker 사내교육 자료Docker 사내교육 자료
Docker 사내교육 자료
 
Look at Oracle Integration Cloud – its relationship to ICS. Customer use Case...
Look at Oracle Integration Cloud – its relationship to ICS. Customer use Case...Look at Oracle Integration Cloud – its relationship to ICS. Customer use Case...
Look at Oracle Integration Cloud – its relationship to ICS. Customer use Case...
 

Similaire à Curso Spring Inyección Dependencias

CDI para Java EE 7
CDI para Java EE 7CDI para Java EE 7
CDI para Java EE 7jose diaz
 
SpringFramework Overview
SpringFramework OverviewSpringFramework Overview
SpringFramework Overviewzerovirus23
 
05.Principio.Inversion.Control.pdf
05.Principio.Inversion.Control.pdf05.Principio.Inversion.Control.pdf
05.Principio.Inversion.Control.pdfAlbertoBaigorria
 
Buenas Prácticas para la Construcción de Aplicaciones de Software
Buenas Prácticas para la Construcción de Aplicaciones de SoftwareBuenas Prácticas para la Construcción de Aplicaciones de Software
Buenas Prácticas para la Construcción de Aplicaciones de SoftwareJorge Alvarez
 
Curso de Spring: Beans
Curso de Spring: BeansCurso de Spring: Beans
Curso de Spring: BeansJano González
 
Rest api con spring boot en 40’
Rest api con spring boot en 40’Rest api con spring boot en 40’
Rest api con spring boot en 40’Sebastian Bogado
 

Similaire à Curso Spring Inyección Dependencias (8)

CDI para Java EE 7
CDI para Java EE 7CDI para Java EE 7
CDI para Java EE 7
 
spring framework
spring frameworkspring framework
spring framework
 
SpringFramework Overview
SpringFramework OverviewSpringFramework Overview
SpringFramework Overview
 
05.Principio.Inversion.Control.pdf
05.Principio.Inversion.Control.pdf05.Principio.Inversion.Control.pdf
05.Principio.Inversion.Control.pdf
 
Jpa
JpaJpa
Jpa
 
Buenas Prácticas para la Construcción de Aplicaciones de Software
Buenas Prácticas para la Construcción de Aplicaciones de SoftwareBuenas Prácticas para la Construcción de Aplicaciones de Software
Buenas Prácticas para la Construcción de Aplicaciones de Software
 
Curso de Spring: Beans
Curso de Spring: BeansCurso de Spring: Beans
Curso de Spring: Beans
 
Rest api con spring boot en 40’
Rest api con spring boot en 40’Rest api con spring boot en 40’
Rest api con spring boot en 40’
 

Plus de Jose Luis Bugarin Peche

ILUMINATIC TECNOLOGIA | 3 Tecnologías Open Source para la Transformación Tecn...
ILUMINATIC TECNOLOGIA | 3 Tecnologías Open Source para la Transformación Tecn...ILUMINATIC TECNOLOGIA | 3 Tecnologías Open Source para la Transformación Tecn...
ILUMINATIC TECNOLOGIA | 3 Tecnologías Open Source para la Transformación Tecn...Jose Luis Bugarin Peche
 
ILUMINATIC TECNOLOGIA | Inteligencia Artificial con Java
ILUMINATIC TECNOLOGIA | Inteligencia Artificial con JavaILUMINATIC TECNOLOGIA | Inteligencia Artificial con Java
ILUMINATIC TECNOLOGIA | Inteligencia Artificial con JavaJose Luis Bugarin Peche
 
Gestión de Rendimiento en Aplicaciones Java - APM
Gestión de Rendimiento en Aplicaciones Java - APMGestión de Rendimiento en Aplicaciones Java - APM
Gestión de Rendimiento en Aplicaciones Java - APMJose Luis Bugarin Peche
 
Arquitectura de Apis & GRPC | #JCONFPERU
Arquitectura de Apis & GRPC | #JCONFPERUArquitectura de Apis & GRPC | #JCONFPERU
Arquitectura de Apis & GRPC | #JCONFPERUJose Luis Bugarin Peche
 
Amazon ec2 | Jose Luis bugarin | Arquitecto Empresarial
Amazon ec2 | Jose Luis bugarin | Arquitecto EmpresarialAmazon ec2 | Jose Luis bugarin | Arquitecto Empresarial
Amazon ec2 | Jose Luis bugarin | Arquitecto EmpresarialJose Luis Bugarin Peche
 
Aprendizaje Supervisado | Redes Neuronales Perceptron | Jose Luis Bugarin
Aprendizaje Supervisado | Redes Neuronales Perceptron | Jose Luis BugarinAprendizaje Supervisado | Redes Neuronales Perceptron | Jose Luis Bugarin
Aprendizaje Supervisado | Redes Neuronales Perceptron | Jose Luis BugarinJose Luis Bugarin Peche
 
Transformación Digital | Enfoque para Estudiantes Universitarios
Transformación Digital | Enfoque para Estudiantes UniversitariosTransformación Digital | Enfoque para Estudiantes Universitarios
Transformación Digital | Enfoque para Estudiantes UniversitariosJose Luis Bugarin Peche
 
Comunicar la tierra con la nube jlbugarin v1.0
Comunicar la tierra con la nube jlbugarin v1.0Comunicar la tierra con la nube jlbugarin v1.0
Comunicar la tierra con la nube jlbugarin v1.0Jose Luis Bugarin Peche
 
Iluminatic facturacion electronica_referencia
Iluminatic facturacion electronica_referenciaIluminatic facturacion electronica_referencia
Iluminatic facturacion electronica_referenciaJose Luis Bugarin Peche
 
Introduccion inteligencia negocios | business intelligence
Introduccion inteligencia negocios | business intelligenceIntroduccion inteligencia negocios | business intelligence
Introduccion inteligencia negocios | business intelligenceJose Luis Bugarin Peche
 
Tecnologías de la Información y Comunicación en la Contabilidad...
Tecnologías de la Información y Comunicación en la Contabilidad...Tecnologías de la Información y Comunicación en la Contabilidad...
Tecnologías de la Información y Comunicación en la Contabilidad...Jose Luis Bugarin Peche
 

Plus de Jose Luis Bugarin Peche (20)

ILUMINATIC TECNOLOGIA | 3 Tecnologías Open Source para la Transformación Tecn...
ILUMINATIC TECNOLOGIA | 3 Tecnologías Open Source para la Transformación Tecn...ILUMINATIC TECNOLOGIA | 3 Tecnologías Open Source para la Transformación Tecn...
ILUMINATIC TECNOLOGIA | 3 Tecnologías Open Source para la Transformación Tecn...
 
ILUMINATIC TECNOLOGIA | Inteligencia Artificial con Java
ILUMINATIC TECNOLOGIA | Inteligencia Artificial con JavaILUMINATIC TECNOLOGIA | Inteligencia Artificial con Java
ILUMINATIC TECNOLOGIA | Inteligencia Artificial con Java
 
Gestión de Rendimiento en Aplicaciones Java - APM
Gestión de Rendimiento en Aplicaciones Java - APMGestión de Rendimiento en Aplicaciones Java - APM
Gestión de Rendimiento en Aplicaciones Java - APM
 
Inteligencia artificial en las Empresas
Inteligencia artificial en las EmpresasInteligencia artificial en las Empresas
Inteligencia artificial en las Empresas
 
Arquitectura de Apis & GRPC | #JCONFPERU
Arquitectura de Apis & GRPC | #JCONFPERUArquitectura de Apis & GRPC | #JCONFPERU
Arquitectura de Apis & GRPC | #JCONFPERU
 
Amazon ec2 | Jose Luis bugarin | Arquitecto Empresarial
Amazon ec2 | Jose Luis bugarin | Arquitecto EmpresarialAmazon ec2 | Jose Luis bugarin | Arquitecto Empresarial
Amazon ec2 | Jose Luis bugarin | Arquitecto Empresarial
 
Aprendizaje Supervisado | Redes Neuronales Perceptron | Jose Luis Bugarin
Aprendizaje Supervisado | Redes Neuronales Perceptron | Jose Luis BugarinAprendizaje Supervisado | Redes Neuronales Perceptron | Jose Luis Bugarin
Aprendizaje Supervisado | Redes Neuronales Perceptron | Jose Luis Bugarin
 
Ecosistema Tecnología Java
Ecosistema Tecnología JavaEcosistema Tecnología Java
Ecosistema Tecnología Java
 
Transformación Digital | Enfoque para Estudiantes Universitarios
Transformación Digital | Enfoque para Estudiantes UniversitariosTransformación Digital | Enfoque para Estudiantes Universitarios
Transformación Digital | Enfoque para Estudiantes Universitarios
 
¿Que son los microservicios?
¿Que son los microservicios?¿Que son los microservicios?
¿Que son los microservicios?
 
Comunicar la tierra con la nube jlbugarin v1.0
Comunicar la tierra con la nube jlbugarin v1.0Comunicar la tierra con la nube jlbugarin v1.0
Comunicar la tierra con la nube jlbugarin v1.0
 
Sistemas Distribuidos Introduccion
Sistemas Distribuidos IntroduccionSistemas Distribuidos Introduccion
Sistemas Distribuidos Introduccion
 
Iluminatic facturacion electronica_referencia
Iluminatic facturacion electronica_referenciaIluminatic facturacion electronica_referencia
Iluminatic facturacion electronica_referencia
 
Arquitectura empresarial
Arquitectura empresarial Arquitectura empresarial
Arquitectura empresarial
 
Desarrollo empresarial con java
Desarrollo empresarial con javaDesarrollo empresarial con java
Desarrollo empresarial con java
 
Introduccion inteligencia negocios | business intelligence
Introduccion inteligencia negocios | business intelligenceIntroduccion inteligencia negocios | business intelligence
Introduccion inteligencia negocios | business intelligence
 
Servicios Web en Android
Servicios Web en AndroidServicios Web en Android
Servicios Web en Android
 
Tecnologías de la Información y Comunicación en la Contabilidad...
Tecnologías de la Información y Comunicación en la Contabilidad...Tecnologías de la Información y Comunicación en la Contabilidad...
Tecnologías de la Información y Comunicación en la Contabilidad...
 
Administracion servidores linux
Administracion servidores linuxAdministracion servidores linux
Administracion servidores linux
 
Curso JSF - Conceptos Basicos
Curso JSF - Conceptos BasicosCurso JSF - Conceptos Basicos
Curso JSF - Conceptos Basicos
 

Curso Spring Inyección Dependencias

  • 1. Curso de Spring Introducción a la Inyección de Dependencias jbugarin@consultorjava.com @jlbugarin
  • 2. AGENDA • ¿Qué es y por que Inyección de Dependencias (ID). • Inyección de Dependencias en Spring Framework. • ID Parámetros. • Bean Naming.
  • 3. Inyección de Dependencias / Dependency Injection • El rey de la inverion de control (IoC) • Principio Hollywood – No me llames, yo te llamare • El contenedor de inyeccion de Dependencias resuelve la dependencia de componentes mediante wiring / injecting un objeto. • Martin Fowler es el que acuño el termino
  • 4. ¿Por qué Inyección de Dependencias? • Flexible – No hay necesidad de tener un código de búsqueda en la lógica de negocio. • Testeable – No se necesita un espacio especifico de testeo – Testeo automático como parte de las construcciones • Mantenible – Permite la reutilización en diferentes entornos de aplicaciones modificando los archivos de configuración en lugar del código. – Promueve un enfoque coherente en todos aplicaciones y equipos
  • 5. 2 Variantes de Inyección de Dependencias • Inyección de Dependencias por constructor – La dependencia se da a través de l constructor de una clase • Inyección de Dependencias por setter – Las dependencias se proporcionan a través de los métodos de una clase al estilo JavaBean. – Es mas popular la inyección de dependencias por constructor.
  • 8. Clases para la Inyección de Dependencias en Spring • BeanFactory Interface • Clases de Implementación – XMLBEANFACTORY – CLASSPATHAPPLOCATION CONTEXT
  • 12. Archivo de configuración de beans Beans Configuration File • El bean se define dentro del tag <bean> y este tag esta dento de la raiz <beans>. • El atributo id, se usa para darle el nombre al bean. • El atributo class, se usa para indicarle la clase que tiene un id para poderlo inyectar.
  • 14. Ejemplo de Referencia – Setter ID
  • 15. Ejemplo de Referencia – DI Constructor
  • 16. Ejemplo Referencia - DI Constructor
  • 17. BEANS • El termino bean es usado para referirnos a cualquier componente administrado por el BeanFactory. • Beans es lo mismo que un Java Bean. • Propiedades / atributos de los beans son simples o valrores que hacen referencia a otros beans. • Los Beans pueden tener multiples nombres
  • 18. DI PARAMETERS TYPES • Spring soporta los siguientes parametros de inyeccion: – Valores Simples – Beans – Collecciones / Listas • Estos parametros se usan para inyeccion de setter o de constructor.
  • 20. Inyección de Beans • Se usa cuando necesitas inyectar un bean en otro. • Ambos beans deben de estar declarados para que puedan funcionar. • Declarar la inyección con usando el tag ref. • El tipo que se inyecta no tiene que ser e tipo exacto definido en la referencia. – Si el tipo definido en el objetivo es una interfaz, el tipo inyectado debe ser una implementación de ella. – Si el tipo definido en el objetivo es una clase, el tipo inyectado puede ser del mismo tipo o subtipo.
  • 23. Ejemplo de Bean Naming
  • 24. Ing. Jose Luis Bugarin – jbugarin@consultorjava.com - @jlbugarin GRACIAS!