2016-08-04 6 views
0

Ich bin neu in Hibernate. Ich möchte Daten in diese Hibernate Einheit einzufügen:Einfügen von Daten in die Tabelle mit Hibernate

@Entity 
public class Invitation implements Serializable 
{ 
    @Id 
    @GeneratedValue(strategy = GenerationType.IDENTITY) 
    private Long id; 

    @Column(name = "invited_on") 
    @Temporal(TemporalType.TIMESTAMP) 
    private Date invitedOn; 

    @Column(name = "invited_email") 
    private String invitedEmail; 

    @Column(name = "invitation_msg") 
    private String invitationMessage; 

    private Boolean status; //true:accepted || false:pending 

    @ManyToOne 
    @JoinColumn(name = "sent_by") 
    private Person inviter; 

// getters and setters 
} 

Getestet habe ich diese Code:

public void insert() 
{ 
    Query query = session.createQuery("insert into Invitation(invited_on, invited_email, invitation_msg, sent_by)"); 
    int result = query.executeUpdate(); 
} 

Was ist der richtige Weg, um Daten einfügen? Wie sollte ich ein Session-Objekt erstellen?

+0

http://docs.jboss.org/hibernate/orm/5.1/quickstart/html_single/#hibernate-gsg-tutorial-basic-entity –

+0

Hallo Peter, ich schlage vor, Sie mehrere Dokumente aus dem Ruhezustand zu lesen. Du brauchst mehr Sachen, wie getting sessionFactory, definiere Transaktionen, definiere Datenbankverbindungen, ... hol dir ein einfaches Beispiel aus dem Internet. – duardito

+0

Ich habe die Zuordnungsdatei hinzugefügt. Ich muss nur eine INSERT-Anweisung machen –

Antwort

0

Sie haben Hibernate und es ist Werkzeuge BENUTZEN SIE !!!


HAFTUNGSAUSSCHLUSS:

  • Beispiel von HERE nahm
  • Code on the fly geschrieben !!
  • Ich habe status Attribut nicht verwendet, weil nicht zugeordnet ist!

// don't need if you already got a session 
Session session = HibernateUtil.getSessionFactory().openSession(); 

// start transaction 
session.beginTransaction(); 

// create invitation Object 
Invitation inv = new Invitation(); 
inv.setId(1L); 
inv.setInvitedOn(new java.util.Date()); 
inv.setInvitedEmail("[email protected]"); 
inv.setInvitationMessage("come on!!!"); 
inv.setInviter(new Person("inviter")); // hey! this is not valid for sure! :) 

// Save the invitation to database 
session.save(inv); 

// Commit the transaction 
session.getTransaction().commit(); 
0

diese Verwendung in der Hauptklasse arbeitet er Daten in die Tabelle einfügen:

Benutzer user = neue Benutzer();

user.setUid(1); 
    user.setUfname("firstname"); 
    user.setUlname("Lastname"); 

    Configuration config = new Configuration().configure().addAnnotatedClass(Users.class); 
    ServiceRegistry reg = new ServiceRegistryBuilder().applySettings(config.getProperties()).buildServiceRegistry(); 
    SessionFactory sf = config.buildSessionFactory(reg); 
    Session session = sf.openSession(); 

    Transaction tx = session.beginTransaction(); 
    session.save(user); 

    tx.commit(); 
Verwandte Themen