miercuri, decembrie 14, 2005

Spring Experience

Zilele acestea a avut loc prima conferinta TSE ~ The Spring Experience dedicata framework-ului Spring. Cei care au organizat: Interface21 firma care intretine framework-ul si ofera suport si NoFluffJustStuff organizatori profesionisti de conferinte pe teme Java.

Mai multe informatii despre framework-ul Spring gasiti la: http://www.springframework.org/. Cam toti pe care i-am intrebat despre Spring au inteles ca este un alt framework Web. Spring este mult mai mult! In primul rand este un container usor bazat pe Dependency Injection. Partea lui Web este un MVC in gen Struts si e doar unul din modulele acestui framework. In locul partii de Spring MVC poate fi folosit oricare alt framework Web orientat pe request-response sau pe componente.

Prin ce se remarca Spring, este partea lui de middleware. De fapt ce pot sa spun eu despre Spring este ca reprezinta un mod standard de neegalat de a face J2EE fara EJB.

Acest framework ramane un necunoscut pentru multi nestiutori, neglijenti si nepasatori (ca o paranteza - acestia sunt chiar cei care nu au invatat ca singurul expert este Google). Sunt multi care fac J2EE fara EJB si reinventeaza roata de fiecare data netinand cont de productivitate. Sunt multi care nu costientizeaza ideea de framework si productivitatea pe care o pot aduce acestea prin faptul ca ofera un cadru comun de lucru care abstractizeaza partile rudimentare.

Consider ca Spring e ceea ce lipsea pentru a avea un stack complet de framework-uri in J2EE. Aveam framework-uri Web (sa enumeram Struts, Tapestry, JSF...) si aveam de asemenea framework-uri ORM (Hibernate, iBatis, OJB ...). Dar nu era nimic care sa le lege.

Ce aduce Spring:
- integrarea framework-urilor Web cu cele ORM
- un mod standard de a face securitatea prin Acegi
- servicii pentru aplicatii via AOP
- o arhitectura pentru aplicatii formata din straturi decuplate
- abstractizarea conexiunii la baza de date
- un mod standard de a instantia graful de obiecte prin DI
- independenta fata de serverul de aplicatii data de DI
- integrarea sistemului cu serviciile remoute si de mesagerie