السبات (الجزء 2): التكوين والاستخدام
![](http://img.brin-designs.com/img/games/818/hibernate-configuration.png)
تكوين السبات في تطبيق Java
- تثبيت JDK 1.4 أو JDK 1.5.
- قم بتنزيل الإصدار 3 من hibernate.org
- الرجوع إلى الجرار السبات في classpath.
- حدد ملف تكوين الإسبات (hibernate.cfg.xml):
يجب وضع هذا الملف في الدليل الذي يحتوي على الكود المصدري لتطبيق JAVA (مستحسن).
فيما يلي مثال لملف hibernate.cfg.xml مع التعليقات الضرورية:
PUBLIC "- // تكوين السبات / السبات DTD // EN"
"[//hibernate.sourceforge.net/hibernate-configuration-3.0.dtd">
جدبك: أوراكل: رقيقة:dbServer: 1521: ديسيبل
oracle.jdbc.OracleDriver
org.hibernate.dialect.Oracle9Dialect
dbusername
dbpassword
صحيح
صحيح
صحيح
1
خاطئة
50
صحيح
org.hibernate.connection.C3P0ConnectionProvider
3
180
100
10
1000
org.hibernate.cache.NoCacheProvider
تحديد ملفات تعيين hbm:
هذه مجموعة من الملفات التي تجعل التعيين بين قاعدة بيانات الكيانات وكائنات JAVA المرتبطة بها.
يتم وصف المسارات الكاملة لجميع ملفات تعيين hbm في ملف التكوين (hibernate.cfg.xml).
باستخدام السبات في تطبيق Java:
في هذا المثال ، سوف نستخدم ملف تكوين السبات:
- إعلان الجدول (Oracle)
إنشاء جدول عميل
(
رقم ID_Client (10) غير فارغ ،
TITRE VARCHAR2 (10) ،
NOM VARCHAR2 (30) ،
رقم العدد (19،5) ،
رقم CA (19،5) ،
مفتاح ثابت PK_CLIENT الأساسي (CLIENT_ID)
)؛
- إعلان فصول JAVA
/ ** constructeur par défaut * /
عميل عام () {
}
/ ** اكتمل البناء ** /
عميل عمومي (عميل طويل ، سلسلة حروف ، سلسلة أحرف ، BigDecimal remise ، BigDecimal ca)
{
this.idClient = idClient؛
this.titre = titre؛
this.name = الاسم ؛
this.remise = remise؛
this.ca = ca؛
}
/ ** Les getters et setters ** /
getIdClient () طويل عام
{
إرجاع this.clientId؛
}
setIdClient (باطل عمومي طويل) {
this.clientId = clientId؛
}
سلسلة getTitre العامة () {
إرجاع this.titre ؛
}
setTitre public void (String titre) {
this.titre = titre؛
}
سلسلة عامة getNom () {
إرجاع هذا.
}
الفراغ العام setNom (String nom) {
this.nom = nom؛
}
BigDecimal getRemise () {العام
ارجع هذا.
}
مجموعة الفراغات العامة Remise (BigDecimal remise) {
this.remise = remise؛
}
BigDecimal getCa () {
إرجاع this.ca ؛
}
set va publicCa (BigDecimal ca) {
this.ca = ca؛
}
}
- Client.hbm.xml ملفات التعيين:
"- // Hibernate / Hibernate Mapping DTD 3.0 // EN"
"//hibernate.sourceforge.net/hibernate-mapping-3.0.dtd">
اسم = "[Nom_Package] .Client" الجدول = "العميل" كيان اسم = "العميل" > @ hibernate.class الجدول = "العميل" اسم = "idClient" اكتب = "java.lang.Long" عمود = "ID_CLIENT" > معرف دو العميل @ hibernate.id من الدرجة مولد = "تعيين" اكتب = "java.lang.Long" عمود = "CLIENT_ID" اسم = "عيار" اكتب = "java.lang.String" عمود = "TITRE" طول = "10" > Titre دو العميل @ hibernate.property عمود = "TITRE" طول = "10" اسم = "اسم" اكتب = "java.lang.String" عمود = "NAME" طول = "30" > Nom du client @ hibernate.property عمود = "NAME" طول = "30" اسم = "REMISE" اكتب = "java.math.BigDecimal" عمود = "REMISE" طول = "19" > ريميسي دو العميل @ hibernate.property عمود = "REMISE" طول = "19" اسم = "كاليفورنيا" اكتب = "java.math.BigDecimal" عمود = "CA" طول = "19" > شيفر أفير يتم تعريف المفتاح الأساسي في العلامة: في مثالنا ، يعتمد على تسلسل. من الممكن تحديد مفتاح مركب باستخدام العلامة: مركب معرف> يستخدم المثال أدناه طريقة saveOrUpdate () لجلسة السبات. org.hibernate.Session sess = sessFact.openSession ()؛ العميل ج = عميل جديد () ؛ c.setName ( "جون")؛ p.setTitre ( "السيد")؛ المعاملة tx = sess.beginTransaction () ؛ sess.saveOrUpdate (ع)؛ tx.commit ()؛ sess.close ()؛