Hibernacija (2 dalis): konfigūracija ir naudojimas

„Hibernate“ konfigūracija „Java“ programoje

  • Įdiekite JDK 1.4 arba JDK 1.5.
  • Atsisiųskite 3 versiją iš hibernate.org
  • Nurodykite „Hibernate“ stiklainius klasėje.
  • Nustatykite sulaikytosios konfigūracijos failą (hibernate.cfg.xml):

Šis failas turi būti įtrauktas į katalogą, kuriame yra JAVA programos šaltinio kodas (rekomenduojama).

Toliau pateikiamas hibernate.cfg.xml failo, kuriame yra būtini komentarai, pavyzdys:

PUBLIC "- // Sulaikytosios / sulaikytosios konfigūracijos DTD // EN"

"[//hibernate.sourceforge.net/hibernate-configuration-3.0.dtd">

jdbc: oracle: plonas: @dbServer: 1521: db

oracle.jdbc.OracleDriver

org.hibernate.dialect.Oracle9Dialect

dbusname

„dbpassword“

tiesa

tiesa

tiesa

1

klaidinga

50

tiesa

org.hibernate.connection.C3P0ConnectionProvider

3

180

100

10

1000

org.hibernate.cache.NoCacheProvider

Nustatykite hbm kartografavimo failus:

Tai rinkmenų rinkinys, padedantis susieti subjektų duomenų bazę su susijusiais JAVA objektais.

Visi hbm žemėlapių failai yra aprašyti konfigūracijos faile (hibernate.cfg.xml).

„Hibernato“ naudojimas „Java“ programoje:

Šiame pavyzdyje mes naudojame Hibernate konfigūracijos failą:

  • Lentelės deklaracija („Oracle“)

CREATE TABLE CLIENT

(

ID_Client NUMBER (10) NE NULL,

TITRE VARCHAR2 (10),

NOM VARCHAR2 (30),

REMISE NUMBER (19, 5),

CA NUMBER (19, 5),

CONSTRAINT PK_CLIENT PRIMARY KEY (CLIENT_ID)

);

  • JAVA klasių deklaracija

/ ** constructeur par défaut * /

viešasis klientas () {

}

/ ** Konstrukcija užbaigta ** /

viešasis klientas (ilgas klientas, styginių titras, eilutės nominacija, didžiojo dekimato atkūrimas, BigDecimal ca)

{

this.idClient = idClient;

this.titre = titras;

this.name = vardas;

this.remise = remise;

this.ca = ca;

}

/ ** „Les getters et setters“ ** /

viešas Long getIdClient ()

{

grąžinti šį failą;

}

public void setIdClient (ilgas klientas) {

this.clientId = clientId;

}

viešas String getTitre () {

grąžinti šį dydį;

}

viešoji negaliojantis (styginių titras) {

this.titre = titras;

}

viešas String getNom () {

grįžti į šią.nom;

}

public void setNom (String nom) {

this.nom = nom;

}

„BigDecimal getRemise“ () {

grįžti į šią vietą.

}

viešoji negaliojantis nustatymas (BigDecimal remise) {

this.remise = remise;

}

viešas BigDecimal getCa () {

grįžti į šią svetainę;

}

viešoji negaliojantis setCa (BigDecimal ca) {

this.ca = ca;

}

}

  • „Client.hbm.xml“ kartografavimo failai:

"- // Sulaikytasis / sulaikytasis žemėlapis DTD 3.0 // EN"

"//hibernate.sourceforge.net/hibernate-mapping-3.0.dtd">

name = "[Nom_Package] .Klientas"

table = "KLIENTAS"

enterprise-name = "Klientas"

>

@ hibernate.class

table = "KLIENTAS"

name = "idClient"

type = "java.lang.Long"

column = "ID_CLIENT"

>

„Id du client“

@ hibernate.id

generator-class = "priskirta"

type = "java.lang.Long"

stulpelis = "CLIENT_ID"

name = "titre"

type = "java.lang.String"

column = "TITRE"

ilgis = "10"

>

Titre du klientas

@ hibernate.property

column = "TITRE"

ilgis = "10"

name = "name"

type = "java.lang.String"

column = "NAME"

ilgis = "30"

>

Nom du klientas

@ hibernate.property

column = "NAME"

ilgis = "30"

name = "remise"

type = "java.math.BigDecimal"

column = "REMISE"

ilgis = "19"

>

Remise du client

@ hibernate.property

column = "REMISE"

ilgis = "19"

name = "ca"

type = "java.math.BigDecimal"

column = "CA"

ilgis = "19"

>

Chiffre Affaire

Pirminis raktas yra apibrėžtas žyma: mūsų pavyzdyje jis yra pagrįstas seka. Naudojant žymę galima nustatyti sudėtinį raktą:

kompozito-id>

  • Naujo objekto išsaugojimas duomenų bazėje:

Toliau pateiktame pavyzdyje naudojamas „Hibernato“ sesijos „SaveOrUpdate“ () metodas.

 org.hibernate.Session sess = sessFact.openSession (); Klientas c = naujas klientas (); c.setName („John“); p.setTitre („ponas“); Operacija tx = sess.beginTransaction (); sess.saveOrUpdate (p); tx.commit (); sess.close (); 
Ankstesnis Straipsnis Kitas Straipsnis

Geriausi Patarimai