..
Ας δούμε τώρα πώς να δημιουργήσετε ένα ORM επιπέδου με τη χρήση Αδρανοποίηση 3 και ΚΣΙΕ 2 (για τη σωστή κατανόηση του μαθήματος, γίνεται η παραδοχή ότι ο αναγνώστης έχει βασικές γνώσεις για την πηγή των δεδομένων και τη λειτουργία της αδρανοποίησης και ΚΠΔ).
Ας υποθέσουμε ότι έχουμε ένα DB MySQL εγκατεστημένο στον υπολογιστή μας, πρώτα ας ορίσουμε applicationContext.xml μας ένα αρχείο δεδομένων που συνδέεται με DB μας:
<-! ΠΗΓΗ ΔΕΔΟΜΕΝΩΝ -> <bean id="myDataSource" class="org.apache.commons.dbcp.BasicDataSource" destroy-method="close"> <property name="driverClassName" value="com.mysql.jdbc.Driver" /> <property name="url" value="jdbc:mysql://localhost:3306/mrweb" /> <property name="username" value="mrweb" /> <property name="password" value="s3cret" /> </ Φασολιών>Μόλις δημιουργηθεί ένα αρχείο προέλευσης δεδομένων που δημιουργήθηκε για μονάδα επιμονή ΚΣΙΕ βρίσκεται στο META-INF/persistence.xml αρχείο:
<? XML Έκδοση = "1.0" encoding = "utf-8"?> <Εμμονή xmlns = "http://java.sun.com/xml/ns/persistence" xmlns: XSI = "http://www.w3.org/2001/XMLSchema-instance" XSI: schemaLocation = "http://java.sun.com/xml/ns/persistence http://java.sun.com/xml/ns/persistence/persistence_2_0.xsd" version = "2.0"> <persistence-unit name="pu" transaction-type="RESOURCE_LOCAL" /> </ Εμμονή>Σε αυτό το σημείο είμαστε έτοιμοι να ενσωματωθούν με Αδρανοποίηση και ΚΣΙΕ:
<-! ΚΣΙΕ και αδρανοποίησης -> <bean id="jpaVendorAdapter" class="org.springframework.orm.jpa.vendor.HibernateJpaVendorAdapter"> <property name="database" value="MYSQL" /> <property name="showSql" value="true" /> <property name="generateDdl" value="true" /> </ Φασολιών>Χωρίς αυτή την creaimo μας EntityManagerFactory που θα μας επιτρέψει να εισφέρει το DAO σε EntityManger μας:
<! - ΕΡΓΟΣΤΑΣΙΟ ΦΟΡΕΑΣ Manager -> <bean id="entityManagerFactory" class="org.springframework.orm.jpa.LocalContainerEntityManagerFactoryBean"> <property name="dataSource" ref="myDataSource" /> <property name="persistenceUnitName" value="pu" /> <property name="jpaVendorAdapter" ref="jpaVendorAdapter" /> </ Φασολιών>Παράδειγμα οντότητα δημιουργούμε τώρα ένα αυτοκίνητο:
it.mrwebmaster.hibernate πακέτο?
εισαγωγή java.util.Date?
javax.persistence.Column εισαγωγές?
εισαγωγές javax.persistence.Entity?
javax.persistence.GeneratedValue εισαγωγές?
javax.persistence.Id εισαγωγές?
εισαγωγές javax.persistence.PersistenceUnit?
@ Οντότητα
@ PersistenceUnit (unitName = "μπορούν")
δημόσια τάξη αυτοκινήτου {
@ Παράκαμψη
δημόσια String toString () {
επιστροφή "Car [id =" + id + "name =" + name + ", year =" + χρόνο + "]"?
}
@ Id
@ GeneratedValue
ιδιωτική id String?
@ Στήλη
ιδιωτικού όνομα String?
@ Στήλη
ιδιωτική χρόνια Ημερομηνία?
δημόσια Integer getId () {
επιστροφή id?
}
δημόσια getName String () {
επιστροφή όνομα?
}
δημόσια getYear Ημερομηνία () {
επιστρέφουν χρόνο?
}
δημόσια άκυρη setId (Integer id) {
this.id = id?
}
δημόσια setName άκυρη (String name) {
this.name = όνομα?
}
δημόσια setYear κενό (έτος Date) {
this.year = έτος?
}
}
Φορέας μας έχει μόνο τρεις στήλες: Id, Name, και το έτος, όπου η στήλη ID είναι πρωτεύον κλειδί μας ότι θα δημιουργούνται αυτόματα από Αδρανοποίηση.
<-! Σχολιασμό ΚΣΙΕ -> <bean class="org.springframework.orm.jpa.support.PersistenceAnnotationBeanPostProcessor" />καθιστά περιττό λοιπόν να διευκρινιστεί, στο πλαίσιο της μονάδας επιμονή, ο κατάλογος των φορέων στην εφαρμογή μας.
| |
Linux (Μάθημα)
Πλήρης οδηγός για την open-source σύστημα. Από 49 €. |
| |
PHP (Μάθημα)
Η πλήρης σειρά μαθημάτων για τη δημιουργία δυναμικών ιστοσελίδων. Από 49 €. |
| |
Ruby και Ruby on Rails (Μάθημα)
Δημιουργία λογισμικού και Web εφαρμογές με Ρουμπίνι και RoR. Από 39 €. |