Précédent   Forum des professionnels en informatique > Java > Général Java > Persistance > JPA
JPA Forum d'entraide sur l'API de persistance JPA (Java Persistence API)
Partagez cette discussion sur d'autres réseaux sociaux : Viadeo Twitter Google Facebook Digg Delicious MySpace Yahoo
Réponse Proposer ce sujet en actualité
 
Outils de la discussion
Publicité
'
Vieux 07/01/2012, 18h09   #1
Nouveau Membre du Club
 
Homme Omar Belghiti Alaoui
Étudiant
Inscription : octobre 2010
Messages : 100
Détails du profil
Informations personnelles :
Nom : Homme Omar Belghiti Alaoui
Localisation : France, Seine Maritime (Haute Normandie)

Informations professionnelles :
Activité : Étudiant

Informations forums :
Inscription : octobre 2010
Messages : 100
Points : 36
Points : 36
Par défaut Deux EntityManager au même temps

Bonjour,

Voila j'aimerai savoir si je peux utilisé deux EntityManager l'une dans l'autre genre par exemple:
Code :
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
/*****************************/
//Ma Transaction principale
EntityManagerFactory emf = Persistence.createEntityManagerFactory("pf4-jpa");
		EntityManager em= emf.createEntityManager();
		em.getTransaction().begin();
 
/*****************************/
//ici j'essai de suprimer directeement depuis la base de doones
EntityManagerFactory emfs = Persistence.createEntityManagerFactory("pf4-jpa");
		EntityManager ems = emfs.createEntityManager();
		ems.getTransaction().begin();
		Groupe ecole = ems.find(Ecole.class, 1351);
		ems.remove(ecole);
		ems.getTransaction().commit();
		ems.close();
/*****************************/
//ici je verifie si l'element est toujour dans la base de donnés
em.getTransaction().commit();
		em.close();
/*****************************/
J'ai essayer cela mais le problème c'est que il le supprime a la fin alors que moi je doit revérifier si il est supprimé

Merci
newbe-deve est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 08/01/2012, 01h01   #2
Modérateur
 
Avatar de paissad
 
Homme Papa I. DIAKHATE
Étudiant
Inscription : avril 2006
Messages : 613
Détails du profil
Informations personnelles :
Nom : Homme Papa I. DIAKHATE
Âge : 26
Localisation : France, Haute Garonne (Midi Pyrénées)

Informations professionnelles :
Activité : Étudiant
Secteur : High Tech - Éditeur de logiciels

Informations forums :
Inscription : avril 2006
Messages : 613
Points : 1 461
Points : 1 461
Bonjour,
Code Java :
1
2
 
		ems.remove(ecole);
ce code là puis un commit() sur la transaction va supprimer la donnée ( ce qui me semble logique )
Sinon, si tu veux vérifier si la donnée existe ou pas, qu'est ce qui t'empêche d'utiliser ?
Par ailleurs, tes EntityManagerFactory imbriqués me semblent tordus
__________________
Nous n'héritons pas de la terre de nos parents, nous l'empruntons à nos enfants.
Modérateur aux rubriques Linux/Unix, Java et au chat d'entraide du site.
http://blog.paissad.net
paissad est actuellement connecté   Envoyer un message privé Réponse avec citation 00
Vieux 08/01/2012, 01h19   #3
Nouveau Membre du Club
 
Homme Omar Belghiti Alaoui
Étudiant
Inscription : octobre 2010
Messages : 100
Détails du profil
Informations personnelles :
Nom : Homme Omar Belghiti Alaoui
Localisation : France, Seine Maritime (Haute Normandie)

Informations professionnelles :
Activité : Étudiant

Informations forums :
Inscription : octobre 2010
Messages : 100
Points : 36
Points : 36
Bonjour,

oui mais le find cherche dans la Base de donnée alors que la donné est toujours là, si je fais un commit avant la fin des manipulation je croie pas que ça serai bien je sais pas que pense tu, pour l'instant ce que je faix c'est que je récupéré la list des écoles et je supprime 1 par 1 depuis la BD avec JPQL après je revérifie si il existe et dans ce cas il passe au catche c'est ce que je veux.
je sais pas si j'utilise le remove comment passer au catch que je veux vue que je vérifie dans le catche que il y a pas d'enregistrement.

Merci
newbe-deve est déconnecté   Envoyer un message privé Réponse avec citation 01
Vieux 08/01/2012, 02h03   #4
Modérateur
 
Avatar de paissad
 
Homme Papa I. DIAKHATE
Étudiant
Inscription : avril 2006
Messages : 613
Détails du profil
Informations personnelles :
Nom : Homme Papa I. DIAKHATE
Âge : 26
Localisation : France, Haute Garonne (Midi Pyrénées)

Informations professionnelles :
Activité : Étudiant
Secteur : High Tech - Éditeur de logiciels

Informations forums :
Inscription : avril 2006
Messages : 613
Points : 1 461
Points : 1 461
Lorsque tu veux vérifier si une donnée est présente dans la table ou non, via ta méthode find(...), tu peux catcher l'exception NoResultException qui signifie que le tuple spécifié n'existe pas.
__________________
Nous n'héritons pas de la terre de nos parents, nous l'empruntons à nos enfants.
Modérateur aux rubriques Linux/Unix, Java et au chat d'entraide du site.
http://blog.paissad.net
paissad est actuellement connecté   Envoyer un message privé Réponse avec citation 00
Vieux 08/01/2012, 02h39   #5
Nouveau Membre du Club
 
Homme Omar Belghiti Alaoui
Étudiant
Inscription : octobre 2010
Messages : 100
Détails du profil
Informations personnelles :
Nom : Homme Omar Belghiti Alaoui
Localisation : France, Seine Maritime (Haute Normandie)

Informations professionnelles :
Activité : Étudiant

Informations forums :
Inscription : octobre 2010
Messages : 100
Points : 36
Points : 36
oui mais pour find il faux utilisé l'id on peux pas utiliser un autre champ comme le nom par exemple alors pour l'id je doit le récupérer via une requête JPQL
newbe-deve est déconnecté   Envoyer un message privé Réponse avec citation 00
Réponse Proposer ce sujet en actualité Cette discussion est résolue.
Outils de la discussion



Fuseau horaire GMT +2. Il est actuellement 08h50.


 
 
 
 
Partenaires

Hébergement Web