..
Spring rammeverket støtter integrasjon med mange for 'ORM (Object Relational Mapping), men på grunn av eksponering, fokuserer vi bare se hvordan å integrere Hibernate og JPA i et Spring-prosjekt.
Spring støtter disse rammer for operasjoner som ressursforvaltning, implemantazione av DAO (Data Access Object) og transaksjonen ledelse.
Gjennom integrasjon med Spring kan du konfigurere disse rammene gjennom bruk av DI (Dipendency Injection).
Den itegrazione med Spring gjør også en rekke fordeler som:
Spring gjør det enkelt å endre konfigurasjon og implementeringer som kreves av rammeverket til å gjøre testene i isolasjon.
Spring kan oversette spesifikke unntak i DataAccessException ORM rammeverk slik at disse unntakene kan håndteres i virksomheten lag av abstraksjon fra bestemte API brukt.
For å gjøre denne våren har sitt eget hierarki av DAO Unntak som gjelder for enhver datatilgang strategi.
For eksempel, hvis bruk av direkte JDBC, SQLException er alle oversatt til DataAccessException, herunder også oversettelsen av SQL feilkoder.
Hvis du bruker en ORM som Hibernate eller JDO du har å gjøre med HibernatException PersistenceException eller som kan oversettes til IllegalArgumentException eller IllegaleStateException, så abstrahert fra den spesifikke implementeringen av laget.
Slik aktiverer oversettelsen av unntakene bare bruke "@ Repository merknader og konfigurere PersistenceExceptionTranslationPostProcessor:
@ Repository
MyDaoImpl {public class implementerer MYDA
//................
}
. og nell'applicationContext xml:
<- Oversettelse av unntak -> <bean class="org.springframework.dao.annotation.PersistenceExceptionTranslationPostProcessor"/> <bean id="myDao" class="example.MyDaoImpl"/>
Spring søknaden konteksten enkelt kan gjenopprette alle de nødvendige ressurser for å lage din ORM, som DataSource eller konfigurasjon av Hibernate SessionFactory, sentralisere, faktisk, disse ressursene og gjør det enklere å endre dem.
Det tilbyr også andre fordeler, som for eksempel deling av økten i en helt gjennomsiktig.
Spring klarer transaksjoner automatisk eller manuelt.
Uansett hvordan du velger, er det sentrale punktet i transaksjonen ledelsen bruk av AOP.
Ved å velge å bli gjort automatisk ved hjelp av @ Transactional merknaden, hvis du foretrekker en manuell trenger råd i sin rapportering av Application Context konfigurasjonsfilen.
Dette gjør sentralisert ledelse, som alltid, lett å flytte fra en transaksjon leder til et annet, som å gå fra lokale transaksjoner til JTA.
Transaksjonen ledelse vil bli diskutert i detalj i de følgende avsnittene.
Formålet med Spring ORM er å skape en datatilgangsside applikasjonslaget for å bli løslatt, på den ene siden, laget av forretningslogikk fra dipendeze relatert til datatilgang og transaksjonen ledelsen og andre utvikler så å eliminere enkeltfødte og hardkodet ressurs oppslag.
I følgende eksempel kan vi se en ORM lag som bruker Hibernate for datatilgang og transaksjonen ledelsen til JTA:

| |
Linux (Course)
Komplett guide til open-source system. Starter fra 49 €. |
| |
PHP (Course)
Full kurs for å lage dynamiske nettsider. Starter fra 49 €. |
| |
Ruby og Ruby On Rails (Course)
Opprette programvare og web applikasjoner med Ruby og RoR. Starter fra 39 €. |