SlideShare ist ein Scribd-Unternehmen logo
1 von 8
Spring Custom
Namespaces
Ce este Spring Framework?
Spring Framework, in principal, este o platforma care
permite configurarea obiectelor Java, la runtime, in baza
unui fisier xml (inversion of control).
Fisierul de configurare este de forma:
<beans>
<bean id="obj" class="com.example.Configuration">
<property name=" myProperty" value="Test"/>
</bean>
</beans>
Obiectul configurat este de forma:
class Configuration {
void setMyProperty(String myPropertyValue);
String get MyProperty();
}
De ce Spring Custom Namespaces?
1. Fisierele de configuratie, fiind foarte
generale, au tendinta de a creste repede.
2. Fisierele de configuratie, pentru obiecte
complicate, devin atat greu de citit cat si greu
de scris.
Ce sunt Spring Custom Namespaces?
Un namespace custom este o forma de
prescurtare a fisierului de configuratie prin
introducerea unui set de elemente xml
specializate pentru anumite tipuri de obiecte,
intr-un namespace xml separat.
De nu folosim un mecanism custom daca tot ne
construim xml-ul de configurare singuri?
Cum arata fisierele prescurtate?
Configuratia:
<beans>
<bean id="obj" class="com.example.Configuration">
<property name=" myProperty" value="a value"/>
<property name=" otherProperty" value="another value"/>
</bean>
</beans>
Devine:
<beans xmlns:c=" http://www.bjug.ro/schemas/customns">
<c:configuration id="obj" myProperty="a value" otherProperty="another
value"/>
</beans>
De ce nu folosim un mecanism custom daca
tot ne construim xml-ul de configurare singuri?
1. SCN se integreaza cu frameworkul IoC de
baza, beneficiind de toate functionalitatile
acestuia
2. Elimina nevoia de a scrie tot codul,
intervenind ca modul in mecanimsul existent
al Spring.
Care sunt componentele unui SCN?
● Schema xml a obiectului configurat (xsd)
● Handler-ul pentru schema xml
● ObjectBuilder-ul pentru maparea elementelor
si atributelor xml la modelul obiectual al
SpringFramework
The end.

Weitere ähnliche Inhalte

Andere mochten auch (11)

Bakía ra una nueva era
Bakía ra una nueva eraBakía ra una nueva era
Bakía ra una nueva era
 
PRESENTACIÓN Alcasa
PRESENTACIÓN AlcasaPRESENTACIÓN Alcasa
PRESENTACIÓN Alcasa
 
Máy cắt cỏ Makita dùng pin dur182 lrf dur182lz
Máy cắt cỏ Makita dùng pin dur182 lrf dur182lzMáy cắt cỏ Makita dùng pin dur182 lrf dur182lz
Máy cắt cỏ Makita dùng pin dur182 lrf dur182lz
 
Navegadores web
Navegadores webNavegadores web
Navegadores web
 
El arte
El arteEl arte
El arte
 
Year 6 art slw
Year 6 art slwYear 6 art slw
Year 6 art slw
 
Venalum (1)
Venalum (1)Venalum (1)
Venalum (1)
 
BICASTIRADENTES_MEIOAMBIENTE
BICASTIRADENTES_MEIOAMBIENTEBICASTIRADENTES_MEIOAMBIENTE
BICASTIRADENTES_MEIOAMBIENTE
 
MANUAL DA MESA DE SOM MACKIE 402 VLZ4 (PORTUGUÊS)
MANUAL DA MESA DE SOM MACKIE 402 VLZ4 (PORTUGUÊS)MANUAL DA MESA DE SOM MACKIE 402 VLZ4 (PORTUGUÊS)
MANUAL DA MESA DE SOM MACKIE 402 VLZ4 (PORTUGUÊS)
 
Fusiones y Adquisiciones
Fusiones y AdquisicionesFusiones y Adquisiciones
Fusiones y Adquisiciones
 
Ilola: Ryhmätaitoja ja aggression hallintaa koulun tuella
Ilola: Ryhmätaitoja ja aggression hallintaa koulun tuellaIlola: Ryhmätaitoja ja aggression hallintaa koulun tuella
Ilola: Ryhmätaitoja ja aggression hallintaa koulun tuella
 

Mehr von Ioan Eugen Stan

Modern authentication in Sling with Openid Connect and Keycloak - Adapt.to 20...
Modern authentication in Sling with Openid Connect and Keycloak - Adapt.to 20...Modern authentication in Sling with Openid Connect and Keycloak - Adapt.to 20...
Modern authentication in Sling with Openid Connect and Keycloak - Adapt.to 20...Ioan Eugen Stan
 
Gradle build automation tool
Gradle   build automation toolGradle   build automation tool
Gradle build automation toolIoan Eugen Stan
 
Modular Java applications with OSGi on Apache Karaf
Modular Java applications with OSGi on Apache KarafModular Java applications with OSGi on Apache Karaf
Modular Java applications with OSGi on Apache KarafIoan Eugen Stan
 
Hands on continouous delivery, I TAKE 2014
Hands on continouous delivery, I TAKE 2014Hands on continouous delivery, I TAKE 2014
Hands on continouous delivery, I TAKE 2014Ioan Eugen Stan
 
2013 java2 days web apps - a different angle
2013 java2 days web apps - a different angle2013 java2 days web apps - a different angle
2013 java2 days web apps - a different angleIoan Eugen Stan
 
Enterprise Integration Patterns with Apache Camel
Enterprise Integration Patterns with Apache CamelEnterprise Integration Patterns with Apache Camel
Enterprise Integration Patterns with Apache CamelIoan Eugen Stan
 
Apache james more than emails in the cloud
Apache james  more than emails in the cloudApache james  more than emails in the cloud
Apache james more than emails in the cloudIoan Eugen Stan
 
Javascript ui for rest services
Javascript ui for rest servicesJavascript ui for rest services
Javascript ui for rest servicesIoan Eugen Stan
 

Mehr von Ioan Eugen Stan (8)

Modern authentication in Sling with Openid Connect and Keycloak - Adapt.to 20...
Modern authentication in Sling with Openid Connect and Keycloak - Adapt.to 20...Modern authentication in Sling with Openid Connect and Keycloak - Adapt.to 20...
Modern authentication in Sling with Openid Connect and Keycloak - Adapt.to 20...
 
Gradle build automation tool
Gradle   build automation toolGradle   build automation tool
Gradle build automation tool
 
Modular Java applications with OSGi on Apache Karaf
Modular Java applications with OSGi on Apache KarafModular Java applications with OSGi on Apache Karaf
Modular Java applications with OSGi on Apache Karaf
 
Hands on continouous delivery, I TAKE 2014
Hands on continouous delivery, I TAKE 2014Hands on continouous delivery, I TAKE 2014
Hands on continouous delivery, I TAKE 2014
 
2013 java2 days web apps - a different angle
2013 java2 days web apps - a different angle2013 java2 days web apps - a different angle
2013 java2 days web apps - a different angle
 
Enterprise Integration Patterns with Apache Camel
Enterprise Integration Patterns with Apache CamelEnterprise Integration Patterns with Apache Camel
Enterprise Integration Patterns with Apache Camel
 
Apache james more than emails in the cloud
Apache james  more than emails in the cloudApache james  more than emails in the cloud
Apache james more than emails in the cloud
 
Javascript ui for rest services
Javascript ui for rest servicesJavascript ui for rest services
Javascript ui for rest services
 

Bjug Spring Custom Namespaces by Vlad Untu

  • 2. Ce este Spring Framework? Spring Framework, in principal, este o platforma care permite configurarea obiectelor Java, la runtime, in baza unui fisier xml (inversion of control). Fisierul de configurare este de forma: <beans> <bean id="obj" class="com.example.Configuration"> <property name=" myProperty" value="Test"/> </bean> </beans> Obiectul configurat este de forma: class Configuration { void setMyProperty(String myPropertyValue); String get MyProperty(); }
  • 3. De ce Spring Custom Namespaces? 1. Fisierele de configuratie, fiind foarte generale, au tendinta de a creste repede. 2. Fisierele de configuratie, pentru obiecte complicate, devin atat greu de citit cat si greu de scris.
  • 4. Ce sunt Spring Custom Namespaces? Un namespace custom este o forma de prescurtare a fisierului de configuratie prin introducerea unui set de elemente xml specializate pentru anumite tipuri de obiecte, intr-un namespace xml separat. De nu folosim un mecanism custom daca tot ne construim xml-ul de configurare singuri?
  • 5. Cum arata fisierele prescurtate? Configuratia: <beans> <bean id="obj" class="com.example.Configuration"> <property name=" myProperty" value="a value"/> <property name=" otherProperty" value="another value"/> </bean> </beans> Devine: <beans xmlns:c=" http://www.bjug.ro/schemas/customns"> <c:configuration id="obj" myProperty="a value" otherProperty="another value"/> </beans>
  • 6. De ce nu folosim un mecanism custom daca tot ne construim xml-ul de configurare singuri? 1. SCN se integreaza cu frameworkul IoC de baza, beneficiind de toate functionalitatile acestuia 2. Elimina nevoia de a scrie tot codul, intervenind ca modul in mecanimsul existent al Spring.
  • 7. Care sunt componentele unui SCN? ● Schema xml a obiectului configurat (xsd) ● Handler-ul pentru schema xml ● ObjectBuilder-ul pentru maparea elementelor si atributelor xml la modelul obiectual al SpringFramework