JPA: persis vs. merge.
authorFrantišek Kučera <franta-hg@frantovo.cz>
Sat, 06 Mar 2010 21:08:42 +0100
changeset 567021b32ce3d1
parent 55 079a3221355d
child 57 7162ed62c9ab
JPA: persis vs. merge.
java/nekurak.net-ejb/src/java/cz/frantovo/nekurak/dao/PodnikDAO.java
java/nekurak.net-ejb/src/java/cz/frantovo/nekurak/dao/UzivatelDAO.java
java/nekurak.net-ejb/src/java/cz/frantovo/nekurak/ejb/PodnikEJB.java
java/nekurak.net-ejb/src/java/cz/frantovo/nekurak/ejb/UzivatelEJB.java
     1.1 --- a/java/nekurak.net-ejb/src/java/cz/frantovo/nekurak/dao/PodnikDAO.java	Fri Mar 05 10:28:34 2010 +0100
     1.2 +++ b/java/nekurak.net-ejb/src/java/cz/frantovo/nekurak/dao/PodnikDAO.java	Sat Mar 06 21:08:42 2010 +0100
     1.3 @@ -26,7 +26,7 @@
     1.4  	return dotaz.getResultList();
     1.5      }
     1.6  
     1.7 -    public void uloz(Podnik p) {
     1.8 +    public void zaloz(Podnik p) {
     1.9  	if (p.getDatum() == null) {
    1.10  	    p.setDatum(new Date());
    1.11  	}
    1.12 @@ -34,6 +34,14 @@
    1.13  	em.persist(p);
    1.14      }
    1.15  
    1.16 +    public void uloz(Podnik p) {
    1.17 +	if (p.getDatum() == null) {
    1.18 +	    p.setDatum(new Date());
    1.19 +	}
    1.20 +
    1.21 +	em.merge(p);
    1.22 +    }
    1.23 +
    1.24      private static String t(Class trida) {
    1.25  	return trida.getSimpleName();
    1.26      }
     2.1 --- a/java/nekurak.net-ejb/src/java/cz/frantovo/nekurak/dao/UzivatelDAO.java	Fri Mar 05 10:28:34 2010 +0100
     2.2 +++ b/java/nekurak.net-ejb/src/java/cz/frantovo/nekurak/dao/UzivatelDAO.java	Sat Mar 06 21:08:42 2010 +0100
     2.3 @@ -19,11 +19,19 @@
     2.4      @PersistenceContext(unitName = PU)
     2.5      private EntityManager em;
     2.6  
     2.7 -    public void uloz(Uzivatel u) {
     2.8 +    public void zaloz(Uzivatel u) {
     2.9  	if (u.getDatum() == null) {
    2.10  	    u.setDatum(new Date());
    2.11  	}
    2.12  
    2.13  	em.persist(u);
    2.14      }
    2.15 +
    2.16 +    public void uloz(Uzivatel u) {
    2.17 +	if (u.getDatum() == null) {
    2.18 +	    u.setDatum(new Date());
    2.19 +	}
    2.20 +
    2.21 +	em.merge(u);
    2.22 +    }
    2.23  }
     3.1 --- a/java/nekurak.net-ejb/src/java/cz/frantovo/nekurak/ejb/PodnikEJB.java	Fri Mar 05 10:28:34 2010 +0100
     3.2 +++ b/java/nekurak.net-ejb/src/java/cz/frantovo/nekurak/ejb/PodnikEJB.java	Sat Mar 06 21:08:42 2010 +0100
     3.3 @@ -24,7 +24,7 @@
     3.4  
     3.5      @RolesAllowed("opravneny")
     3.6      public void zalozPodnik(Podnik p) {
     3.7 -	podnikDAO.uloz(p);
     3.8 +	podnikDAO.zaloz(p);
     3.9      }
    3.10  
    3.11      @RolesAllowed("opravneny")
     4.1 --- a/java/nekurak.net-ejb/src/java/cz/frantovo/nekurak/ejb/UzivatelEJB.java	Fri Mar 05 10:28:34 2010 +0100
     4.2 +++ b/java/nekurak.net-ejb/src/java/cz/frantovo/nekurak/ejb/UzivatelEJB.java	Sat Mar 06 21:08:42 2010 +0100
     4.3 @@ -27,7 +27,7 @@
     4.4  	    Uzivatel u = p.getUzivatel();
     4.5  	    /** Heslo musíme před uložení zahashovat, aby se uživatel mohl přihlásit. */
     4.6  	    u.setHeslo(Hash.hashuj(u.getHeslo()));
     4.7 -	    uzivatelDao.uloz(u);
     4.8 +	    uzivatelDao.zaloz(u);
     4.9  	} catch (NoSuchAlgorithmException e) {
    4.10  	    /** Nemělo by nastat */
    4.11  	    throw new NecekanaVyjimka("Neexistující hashovací algoritmus.", e);