-->
These old forums are deprecated now and set to read-only. We are waiting for you on our new forums!
More modern, Discourse-based and with GitHub/Google/Twitter authentication built-in.

All times are UTC - 5 hours [ DST ]



Forum locked This topic is locked, you cannot edit posts or make further replies.  [ 2 posts ] 
Author Message
 Post subject: Einen Datensatz nur speichern, wenn noch nicht vorhanden?
PostPosted: Thu Dec 14, 2006 6:28 am 
Newbie

Joined: Thu Nov 23, 2006 11:08 am
Posts: 14
hallo an alle,

gibt es in hibernate die moeglichkeit, einen datensatz nur zu schreiben, wenn er noch nicht in der db vorhanden ist? ich weiss nicht, ob es da probleme mit der id gibt? sagen wir mal, ich habe eine datensatz in der db mit der id
12345. zu diesem gehoeren 5 spalten. jetzt habe ich einen andren datensatz, der bis auf die spalte id identisch ist. diesen moechte ich dann NICHT in die datenbank schreiben.

geht das mit hibernate?

vielen dank :)


Top
 Profile  
 
 Post subject:
PostPosted: Fri Dec 15, 2006 9:41 am 
Newbie

Joined: Mon Dec 11, 2006 9:22 am
Posts: 7
Wenn du ihn nicht zweimal speichern moechtest, musst du erst schauen, ob er schon da ist.
Wenn er schon da ist nutzt du diesen Datensatz einfach.
Wenn nicht, erzeugst du einfach nen neuen.

Ich hab mir dazu folgende Methode geschrieben:

Code:
   @SuppressWarnings("unchecked")
   public static Linie getOrCreate(String name) {
      Session session=HibernateHafas.getSessionFactory().getCurrentSession();
       session.beginTransaction();
      Query q = session.createQuery("from Linie where name = ?");
       q.setString(0,name);
       List<Linie> l=q.list();
        session.getTransaction().commit();

       if(l.size()==0){
          return new Linie(name);
       }else{
          return l.get(0);
       }
    }


Top
 Profile  
 
Display posts from previous:  Sort by  
Forum locked This topic is locked, you cannot edit posts or make further replies.  [ 2 posts ] 

All times are UTC - 5 hours [ DST ]


You cannot post new topics in this forum
You cannot reply to topics in this forum
You cannot edit your posts in this forum
You cannot delete your posts in this forum

Search for:
© Copyright 2014, Red Hat Inc. All rights reserved. JBoss and Hibernate are registered trademarks and servicemarks of Red Hat, Inc.