Hibernate-Beispiel für die Komponentenzuordnung

Beispiel für die Zuordnung von Ruhezustandskomponenten

Die Ruhezustandskomponente stellt eine Gruppe von Werten oder Eigenschaften dar, nicht eine Entität (Tabelle). Im folgenden Tutorial erfahren Sie, wie Komponenten im Ruhezustand funktionieren.

1. Kundentabelle

Siehe unten Kundentabelle.

customer table

Kundentabelle, SQL-Skript in der MySQL-Datenbank.

CREATE TABLE `customer` (
  `CUST_ID` int(10) unsigned NOT NULL AUTO_INCREMENT,
  `CUST_NAME` varchar(10) NOT NULL,
  `AGE` int(10) unsigned NOT NULL,
  `ADDRESS1` varchar(255) NOT NULL,
  `ADDRESS2` varchar(255) NOT NULL,
  `ADDRESS3` varchar(255) NOT NULL,
  `CREATED_DATE` date NOT NULL,
  `CREATED_BY` varchar(10) NOT NULL,
  PRIMARY KEY (`CUST_ID`) USING BTREE
);

2. Modellklasse

Erstellen Sie nun zwei Modellklassen,Customer.java undAddress.java, um die obige Tabelle „customer“ darzustellen.

Datei: Customer.java

package com.example.customer;

import java.util.Date;

public class Customer implements java.io.Serializable {

    private Integer custId;
    private String custName;
    private int age;
    private Address address;
    private Date createdDate;
    private String createdBy;

    //setters and getters
}

Datei: Address.java

package com.example.customer;

public class Address implements java.io.Serializable {

    private String address1;
    private String address2;
    private String address3;

    //setters and getters
}

In diesem Fall istAddress.java ein "component", das die Spalten "Adresse1", "Adresse2" und "Adresse3" fürCustomer.java darstellt

3. Komponentenzuordnung

Jetzt können Sie die Komponentenzuordnung wie folgt deklarieren:

Datei: Customer.hbm.xml





    

        
            
            
        
        
            
        
        
            
        

        
            
                
            
            
                
            
            
                
            
        

        
            
        
        
            
        
    

4. Starte es

Erstellen Sie ein Adressobjekt, fügen Sie es in das Kundenobjekt ein und behalten Sie es bei.

package com.example;

import java.util.Date;
import org.hibernate.Session;
import com.example.customer.Address;
import com.example.customer.Customer;
import com.example.util.HibernateUtil;

public class App {
    public static void main(String[] args) {

    System.out.println("Hibernate component mapping");
    Session session = HibernateUtil.getSessionFactory().openSession();

    session.beginTransaction();

    Address address = new Address();
    address.setAddress1("Address 1");
    address.setAddress2("Address 2");
    address.setAddress3("Address 3");

        Customer cust = new Customer();
        cust.setCustName("example");
        cust.setAge(30);
        cust.setAddress(address);
        cust.setCreatedDate(new Date());
        cust.setCreatedBy("system");

        session.save(cust);

    session.getTransaction().commit();
    System.out.println("Done");
    }
}

Ausgabe…

Hibernate component mapping
Hibernate:
    insert
    into
        exampledb.customer
        (CUST_NAME, AGE, ADDRESS1, ADDRESS2, ADDRESS3, CREATED_DATE, CREATED_BY)
    values
        (?, ?, ?, ?, ?, ?, ?)
Done

Laden Sie es herunter -Hibernate-Component-Mapping-Example.zip (10 KB)