Avansert Java Hibernate Tutorial

Når du utvikler dine profesjonelle Java-programmer - spesielt hvis disse Java-programmene skal fungere i profesjonelle omgivelser der data utholdenhet er nøkkel - kan det hende du finner det nødvendig å implementere en objektrelasjonsdatabase som tar objekter fra et program og kartlegger dem til et databaseskjema slik at objektinformasjon kan lagres og hentes med SQL-lignende kommandoer. Avanserte dvaleteknikker involverer å få tilgang til XML-filene som styrer systemene i databasen for å kartlegge objekter og utføre spørringer ved hjelp av dvalemodus.

Grunnleggende Hibernate og Java Classes

Fordi HQL er et objektrelasjonsdatabaseskema, lagrer det Java-objektinformasjon i en relasjonsdatabase. Følgelig trenger du et Java-objekt som er detaljert i en Java-klasse. Etter at du har bestemt deg for navn og attributter til en klasse, kan du inkludere den informasjonen i en XML-fil for å legge til rette for kartlegging av objektet til en relasjonsdatabase. Følgende Java skisserer en grunnleggende Java-klasse som kan mappes til en database gjennom HQL:

pakke org.example.Example1;

offentlig klasse Eksempel {

offentlig int data1; privat int data2;

offentlig setData1 (int x) {data1 = x; }

}

Mapping XML-fil

Implementering av HQL krever at du oppretter en kartleggingsskjemafil i XML som vil skisse klassen, objektene og attributter for en relasjonsmapping-database. Bruke XML i dvalemodus genererer et dataskjema fra XML og bruker det til databasen, slik at informasjon om klassen vil bli representert i en datatabell. Følgende XML representerer et XML-kartleggingsskjema ved hjelp av "Eksempel" -kursen. "ID" -kodene skematiserer dataelementene, mens "egenskap" -taggen vil skablere innstillings- og innstillingsfunksjonen for "data1:"

Hibernate Query Language (HQL)

Du kan bruke HQL i stedet for Standard Query Language for å spørre en database basert på Java-klasser for å få informasjon. I de fleste henseender ligner HQL på SQL, bare HQL er bygd inn i en Java og Hibernate-kontekst. For eksempel kan du bruke HQL-språket i dvalemodus for å spørre bordet som er opprettet av den kartlagte XML-tegningen fra eksempelklassen. Hvis en forekomst av klassen ble lagret i en relasjonsdatabase med verdien "3" plassert i den lokale variabelen "data1", kan du spørre bordet ved å bruke følgende kommando for å få den verdien på et senere tidspunkt:

VELG FIRST_DATA FRA Eksempel

Avansert kartlegging

Sammen med grunnleggende kartlegging kan du engasjere seg i avansert kartlegging av objektkomponenter og forekomster. Komponenter er klasser som finnes i andre klasser som dataværdier, og kan kartlegges ved hjelp av taggen i mapping XML-filen. Forekomster er spesifikke forekomster av klasser innenfor kode som har angitt verdier, inkludert samlingsklasser som lister eller hashes. Du kan kartlegge samlingsinstanser ved hjelp av taggen sammen med andre mer bestemte tagger.

Anbefalt