Pārziemot (2. daļa): konfigurēšana un lietošana
Hibernācijas konfigurācija Java lietojumprogrammā
- Instalējiet JDK 1.4 vai JDK 1.5.
- Lejupielādējiet versiju 3 no hibernate.org
- Norādiet Hibernate burkas klasē.
- Definējiet hibernācijas konfigurācijas failu (hibernate.cfg.xml):
Šis fails ir jāievieto direktorijā, kas satur JAVA programmas pirmkodu (ieteicams).
Zemāk ir piemērs hibernate.cfg.xml failam ar nepieciešamajiem komentāriem:
PUBLIC "- / / Pārziemot / pārziemot konfigurācija DTD // EN"
"[//hibernate.sourceforge.net/hibernate-configuration-3.0.dtd">
jdbc: oracle: plānas: @dbServer: 1521: db
oracle.jdbc.OracleDriver
org.hibernate.dialect.Oracle9Dialect
dbusname
dbpassword
taisnība
taisnība
taisnība
1
nepatiesa
50
taisnība
org.hibernate.connection.C3P0ConnectionProvider
3
180
100
10
1000
org.hibernate.cache.NoCacheProvider
Definējiet hbm kartēšanas failus:
Tas ir failu kopums, kas padara kartēšanu starp vienības datu bāzi un saistītajiem JAVA objektiem.
Pilns visu hbm kartēšanas failu ceļš ir aprakstīts konfigurācijas failā (hibernate.cfg.xml).
Hibernācijas lietošana Java lietojumprogrammā:
Šajā piemērā mēs izmantosim hibernācijas konfigurācijas failu:
- Tabulas deklarācija (Oracle)
CREATE TABLE KLIENTA
(
ID_Client NUMBER (10) NOT NULL,
TITRE VARCHAR2 (10),
NOM VARCHAR2 (30),
REMISE NUMBER (19, 5),
CA NUMBER (19, 5),
CONSTRAINT PK_CLIENT PRIMARY KEY (CLIENT_ID)
);
- JAVA klases deklarācija
/ ** constructeur par défaut * /
publiskais klients () {
}
/ ** Konstruktors pabeigts ** /
publiskais klients (garais klientsdd, virknes titrs, virknes nominālvērtība, BigDecimālā remīze, BigDecimal ca)
{
this.idClient = idClient;
this.titre = titrs;
this.name = vārds;
this.remise = remise;
this.ca = ca;
}
/ ** Les getters et setters ** /
publiski Long getIdClient ()
{
atgriezties this.clientId;
}
public void setIdClient (Long clientId) {
this.clientId = clientId;
}
publisks String getTitre () {
atgriezt šo krājumu;
}
publiskā spēkā neesamība (String titre) {
this.titre = titrs;
}
publisks String getNom () {
atgriezties šajā.nom;
}
public void setNom (String nom) {
this.nom = nom;
}
publiska BigDecimal getRemise () {
atgriezties šajā naktskrēslā;
}
publiskā spēkā neesamības komplekts (BigDecimal remise) {
this.remise = remise;
}
publiska BigDecimal getCa () {
atgriezties šajā.lv;
}
publiskā spēkā neesamības komplektsCa (BigDecimal ca) {
this.ca = ca;
}
}
- Klientu.hbm.xml kartēšanas faili:
"- // Pārziemot / pārziemot kartēšana DTD 3.0 // EN"
"//hibernate.sourceforge.net/hibernate-mapping-3.0.dtd">
name = "[Nom_Package] .Klients" table = "KLIENTS" entit-name = "Klients" > @ hibernate.class table = "KLIENTS" name = "idClient" type = "java.lang.Long" sleja = "ID_CLIENT" > Id du klients @ hibernate.id generator-class = "piešķir" type = "java.lang.Long" sleja = "CLIENT_ID" name = "titre" type = "java.lang.String" column = "TITRE" garums = "10" > Titre du client @ hibernate.property column = "TITRE" garums = "10" name = "name" type = "java.lang.String" sleja = "NAME" garums = "30" > Nom du klients @ hibernate.property sleja = "NAME" garums = "30" name = "remise" type = "java.math.BigDecimal" column = "REMISE" garums = "19" > Remise du client @ hibernate.property column = "REMISE" garums = "19" name = "ca" type = "java.math.BigDecimal" column = "CA" garums = "19" > Chiffre Affaire Primārā atslēga ir definēta tagā: mūsu piemērā tā ir balstīta uz secību. Izmantojot tagu, ir iespējams definēt kombinēto atslēgu: kompozīta id> Tālāk redzamais piemērs izmanto hibernācijas sesijas SaveOrUpdate () metodi. org.hibernate.Session sess = sessFact.openSession (); Klients c = jauns klients (); c.setName ("John"); p.setTitre ("kungs"); Darījums tx = sess.beginTransaction (); sess.saveOrUpdate (p); tx.commit (); sess.close ();