Você está na página 1de 5

6/6/2016

SpringFrameworkWikipedia,laenciclopedialibre

SpringFramework
DeWikipedia,laenciclopedialibre
Spring es un framework para el desarrollo de
aplicacionesycontenedordeinversindecontrol, de
cdigoabiertoparalaplataformaJava.2
LaprimeraversinfueescritaporRodJohnson,quien
lolanzjuntoalapublicacindesulibroExpertOne
onOneJ2EEDesignandDevelopment (Wrox Press,
octubre2002).Elframeworkfuelanzadoinicialmente
bajo la licencia Apache 2.0 en junio de 2003. El
primer gran lanzamiento fue la versin 1.0, que
apareci en marzo de 2004 y fue seguida por otros
hitos en septiembre de 2004 y marzo de 2005. La
versin 1.2.6 de Spring Framework obtuvo
reconocimientosJoltAwardsyJaxInnovationAwards
en 2006.3 4 Spring Framework 2.0 fue lanzada en
2006,laversin2.5ennoviembrede2007,Spring3.0
en diciembre de 2009, y Spring 3.1 dos aos ms
tarde.5 El inicio del desarrollo de la versin 4.0 fue
anunciadoenenerode2013.6Laversinactuales4.2.2.

SpringFramework
Desarrollador(es)
SpringSource
Informacingeneral
ltimaversinestable

4.2.2
15deoctubrede20151

Gnero

Sistemaoperativo

Multiplataforma

Plataforma

Mquinavirtualjava

Licencia

LicenciaApache2.0

Estadoactual

Activo

[editardatosenWikidata]

SibienlascaractersticasfundamentalesdeSpringFrameworkpuedenserusadasencualquieraplicacin
desarrollada en Java, existen variadas extensiones para la construccin de aplicaciones web sobre la
plataforma Java EE. A pesar de que no impone ningn modelo de programacin en particular, este
frameworksehavueltopopularenlacomunidadalserconsideradounaalternativa,sustituto,einclusoun
complementoalmodeloEJB(EnterpriseJavaBean).

ndice
1 Historia
2 Mdulos
2.1 ContenedordeInversindeControl(inyeccindedependencia)
3 Vasetambin
4 Notasyreferencias
5 Enlacesexternos

Historia
Los primeros componentes de lo que se ha convertido en Spring Framework fueron escritos por Rod
Johnsonenelao2000,mientrastrabajabacomoconsultorindependienteparasusclientesenlaindustria
financiera en Londres. Mientras escriba el libro Expert Oneonone J2EE Design And Development
https://es.wikipedia.org/wiki/Spring_Framework

1/5

6/6/2016

SpringFrameworkWikipedia,laenciclopedialibre

(Programmer to programmer), Rod ampli su cdigo para sintetizar su visin acerca de cmo las
aplicacionesquetrabajanconvariaspartesdelaplataformaJ2EEpodanllegarasermssimplesyms
consistentesqueaquellasquelosdesarrolladoresycompaasestabanusandoporaquelentonces.
Enelao2001losmodelosdominantesdeprogramacinparaaplicacionesbasadasenweberanofrecidas
porelAPIJavaServletylosEnterpriseJavaBeans,ambasespecificacionescreadasporSunMicrosystems
en colaboracin con otros distribuidores y partes interesadas que disfrutaban de gran popularidad en la
comunidadJava.Lasaplicacionesquenoeranbasadasenweb,comolasaplicacionesbasadasenclienteo
aplicaciones en batch, podan ser escritas con base en herramientas y proyectos de cdigo abierto o
comercialesqueproveyeranlascaractersticasrequeridasparaaquellosdesarrollos.
Se form un pequeo equipo de desarrolladores que esperaba trabajar en extender el framework y un
proyectofuecreadoenSourceforgeenfebrerode2003.Despusdetrabajarensudesarrollodurantemsde
un ao lanzaron una primera versin (1.0) en marzo de 2004. Despus de este lanzamiento Spring gan
muchapopularidadenlacomunidadJava,debidoenpartealusodeJavadocydeunadocumentacinde
referenciaporencimadelpromediodeunproyectodecdigoabierto.
Sin embargo, Spring Framework tambin fue duramente criticado en 2004 y sigue siendo el tema de
acaloradosdebates.Altiempoenquesedabasuprimergranlanzamientomuchosdesarrolladoresylderes
deopininvieronaSpringcomoungranpasoconrespectoalmodelodeprogramacintradicionalestoera
especialmente cierto con respecto a Enterprise JavaBeans. Una de las metas de diseo de Spring
FrameworkessufacilidaddeintegracinconlosestndaresJ2EEyherramientascomercialesexistentes.
Estoquitaenpartelanecesidaddedefinirsuscaractersticasenundocumentodeespecificacinelaborado
poruncomitoficialyquepodrasercriticado.
Spring Framework hizo que aquellas tcnicas que resultaban desconocidas para la mayora de
programadores se volvieran populares en un periodo muy corto de tiempo. El ejemplo ms notable es la
inversindecontrol. En el ao 2004, Spring disfrut de unas altsimas tasas de adopcin y al ofrecer su
propio framework de programacin orientada a aspectos (aspectoriented programming,AOP) consigui
hacermspopularsuparadigmadeprogramacinenlacomunidadJava[citarequerida].
En2005Springsuperlastasasdeadopcindelaoanteriorcomoresultadodenuevoslanzamientosyms
caractersticas fueron aadidas. El foro de la comunidad formada alrededor de Spring Framework (The
SpringForum)quearrancafinalesde2004tambinayudaincrementarlapopularidaddelframeworky
desde entonces ha crecido hasta llegar a ser la ms importante fuente de informacin y ayuda para sus
usuarios.

Mdulos
SpringFrameworkcomprendediversosmdulosqueproveenunrangodeservicios:
Contenedordeinversindecontrol:permitelaconfiguracindeloscomponentesdeaplicacinyla
administracin del ciclo de vida de los objetos Java, se lleva a cabo principalmente a travs de la
inyeccindedependencias.
Programacinorientadaaaspectos:habilitalaimplementacinderutinastransversales.
Accesoadatos:setrabajaconRDBMSenlaplataformajava,usandoJavaDatabaseConnectivityy
herramientasdeMapeoobjetorelacionalconbasesdedatosNoSQL.
Gestin de transacciones: unifica distintasAPIs de gestin y coordina las transacciones para los
objetosJava.
https://es.wikipedia.org/wiki/Spring_Framework

2/5

6/6/2016

SpringFrameworkWikipedia,laenciclopedialibre

Modelovistacontrolador:UnframeworkbasadoenHTTPyservlets,queproveeherramientaspara
laextensinypersonalizacindeaplicacioneswebyservicioswebREST.
Frameworkdeaccesoremoto:PermitelaimportacinyexportacinestiloRPC,deobjetosJavaa
travsderedesquesoportenRMI,CORBAyprotocolosbasadosenHTTPincluyendoserviciosweb
(SOAP).
Convencin sobre Configuracin: el mdulo Spring Roo ofrece una solucin rpida para el
desarrollo de aplicaciones basadas en Spring Framework, privilegiando la simplicidad sin perder
flexibilidad.
Procesamiento por lotes: un framework para procesamiento de mucho volumen que como
caractersticas incluye funciones de registro/trazado, manejo de transacciones, estadsticas de
procesamientodetareas,reiniciodetareas,ymanejoderecursos.
Autenticacin y Autorizacin: procesos de seguridad configurables que soportan un rango de
estndares, protocolos, herramientas y prcticas a travs del subproyecto Spring Security
(antiguamenteAcegi).
Administracin Remota: Configuracin de visibilidad y gestin de objetos Java para la
configuracinlocaloremotavaJMX.
Mensajes: Registro configurable de objetos receptores de mensajes, para el consumo transparente
desdelaatravsdeJMS,unamejoradelenvodemensajessobrelasAPIJMSestndar.
Testing:Soportedeclasesparadesarrollodeunidadesdepruebaeintegracin.

ContenedordeInversindeControl(inyeccindedependencia)
Para el Spring Framework es central su Contenedor de inversin de control (IoC), que proporciona una
formaconsistentedeconfiguracinyadministracindeobjetosJavausandolaReflexin.ElContenedorse
encargadegestionarlosciclosdevidadeobjetosdelosobjetosespecficos:lacreacindeestosobjetos,
llamandoasusmtodosdeinicializacin,yconfigurandoestosobjetoscablendolosjuntos.
LosobjetoscreadosporelContenedortambinsedenominanobjetosgestionadosobeans.ElContenedor
se puede configurar mediante la carga de archivos XML o la deteccin de anotaciones Java especficas
sobrelaconfiguracindelasclases.Estasfuentesdedatoscontienenlasdefinicionesqueproporcionanla
informacinnecesariaparalacreacindelasbeans.
Losobjetospuedenserobtenidosporcualquieradelosmediosdedependenciadebsquedaordependencia
deinyeccin.7Dependenciadebsquedaesunmodelodondesepidealobjetocontenedorunobjetoconun
nombreespecficoodeuntipoespecfico.Dependenciadeinyeccinesunmodeloenelqueelcontenedor
pasaobjetospornombreaotrosobjetos,yaseaatravsdemtodosconstructores,propiedades,omtodos
delafbrica.
EnmuchoscasoscuandoseutilizanotraspartesdelSpringFrameworknonecesitautilizarelContenedor,
aunque probablemente su uso le permita hacer una aplicacin ms fcil de configurar y personalizar. El
Contenedor de Spring le proporciona un mecanismo consistente para configurar las aplicaciones, y se
integra con casi todos los entornos Java, desde aplicaciones de pequeas a grandes aplicaciones
empresariales.
ElcontenedorsepuedeconvertirenuncontenedorEJB3.0parcialmentepormediodelproyectoPitchfork
(http://www.springsource.com/web/guest/pitchfork).AlgunoscriticanalSpringFrameworkpornocumplir
losestndares.8Sinembargo,SpringSource(http://www.springsource.com/)noveelcumplimientoEJB3
como un objetivo importante, y afirma que el Spring Framework y el contenedor permiten modelos de
programacin ms potentes.9 No creas un objeto, sino describes la forma en que deben crearse,
https://es.wikipedia.org/wiki/Spring_Framework

3/5

6/6/2016

SpringFrameworkWikipedia,laenciclopedialibre

definindoloenelarchivodeconfiguracindeSpring.Nollamasalosserviciosycomponentes,sinodices
queserviciosycomponentesdebenserllamados,definindolosenlosarchivosdeconfiguracindeSpring.
EstohaceelcdigofcildemantenerymsfcildeprobarmediantelaInyeccindeDependencia(IoC).

Vasetambin
Portal:Freesoftware.ContenidorelacionadoconFreesoftware.
googleGuice
ApacheHiveMind
SpringWebFlow

Notasyreferencias
1.[1](https://spring.io/blog/2015/10/15/springframework422418and3215availablenow)
2.SpringSourceFeatureTour(http://www.springsource.org/features)
3.Joltwinners2006(http://www.ddj.com/architect/187900423?pgno=10)
4.JAXInnovationAwardGewinner2006(http://web.archive.org/web/http://jaxaward.de/jax_award06/gewinner_de.
php)
5.SpringSource.org(http://blog.springsource.org/2012/12/13/springframework32goesga/)
6.[2](http://blog.springsource.org/2013/01/16/nextstopspringframework40/)
7.CulesladiferenciaentreeldepencylookupylainyeccindedependenciaForodeprimavera(http://forum.spri
ngsource.org/showthread.php?79731Whatisthedifferencebetweenthedepencylookupanddependencyinjectio
n).Forum.springsource.org(20091028).Consultadoel24/11/2013.
8.SpringVSEJB3(http://www.andygibson.net/blog/index.php/2008/08/28/isspringbetweenthedevilandtheejb)
9.PitchforkFAQ(http://www.springsource.com/web/guest/pitchfork/pitchforkfaq). Consultado el 6 de junio de
2006.

Mak,Gary(1deseptiembrede2010).PrimaveraRecetas:Unenfoqueproblemasolucin(Segunda
edicin).Apress.pag.1104.ISBN1430224991.
Walls,Craig(28denoviembrede2010).SpringinAction(Thirdedicin).Manning.p.700. ISBN1
935182358.
Las paredes, Craig Breidenbach, Ryan (16 de agosto de 2007). Primavera en Accin (Segunda
edicin).Manning.pag.650.ISBN1933988134.
Johnson,RodHller,JrgenArendsen,Alef Risberg, Thomas Sampaleanu, Colin (8 de julio de
2005).ProfesionaldeDesarrollodeJavaconSpringFramework(http://eu.wiley.com/WileyCDA/Wi
leyTitle/productCd0764574833.html)(Primeraedicin).WroxPress.pag.672.ISBN0764574833.
Harrop,RobMachacek,Jan(31deenerode2005).Proprimavera(http://www.apress.com/book/vie
w/1590594614)(Primeraedicin).Apress.pag.832.ISBN1590594614.
Johnson,RodJrgen,Hller(23deoctubrede2002).DesarrolloJ2EEsinEJB(http://eu.wiley.com/
WileyCDA/WileyTitle/productCd0764558315.html)(Primeraedicin).WroxPress.pag.768. ISBN
0764558315.
Johnson,Rod(octubrede2002).ExpertosdeunoaunoJ2EEDiseoyDesarrollo(http://www.wro
x.com/WileyCDA/WroxTitle/productCd0764543857.html)(Primeraedicin).WroxPress.pag.750.
ISBN0764543857.

Enlacesexternos
WikilibrosalbergaunlibroomanualsobreSpringframework.
SpringFramework(http://www.springsource.org/)
https://es.wikipedia.org/wiki/Spring_Framework

4/5

6/6/2016

SpringFrameworkWikipedia,laenciclopedialibre

SpringFrameworkenEspaolGrupoGoogle(https://groups.google.com/forum/?fromgroups#!foru
m/springframeworkesp)
primaveraHispano(http://www.springhispano.org)
primaveraActionScript(http://web.archive.org/web/http://www.springactionscript.org)
Springbatch(http://static.springsource.org/springbatch/)
ElSpringFrameworkDocumentacindereferencia(http://static.springsource.org/spring/docs/curre
nt/springframeworkreference/html/)
Primavera:ElartedeusarpatronesGRASP(http://javadepend.wordpress.com/2011/10/26/springthe
artofusinggrasppatterns/)
Flor:mdulodeintegracindeSpringFrameworkparaelMagnoliaCMS(http://wiki.magnoliacms.
com/display/WIKI/Magnolia+Blossom)
Conceptodeprimaveratutorialesconejemplosdeprimavera(http://r4r.co.in/java/spring/Basic)
tutorialesSpringFramework(http://www.camelcode.org/Springtutorials.htm)
Tutorialdeprimavera(http://www.javatips.net/blog/2011/12/springtutorial)
PlantilladeprimaveraJdbc(http://www.javatips.net/blog/2011/12/springjdbctemplate)7
Obtenidodehttps://es.wikipedia.org/w/index.php?title=Spring_Framework&oldid=90342808
Categoras: FrameworksdeJava Frameworksparaaplicacionesweb Cdigoabierto
Estapginafuemodificadaporltimavezel8abr2016alas20:52.
EltextoestdisponiblebajolaLicenciaCreativeCommonsAtribucinCompartirIgual3.0podran
seraplicablesclusulasadicionales.Alusarestesitio,ustedaceptanuestrostrminosdeusoynuestra
polticadeprivacidad.
WikipediaesunamarcaregistradadelaFundacinWikimedia,Inc.,unaorganizacinsinnimode
lucro.

https://es.wikipedia.org/wiki/Spring_Framework

5/5

Você também pode gostar