Bonjour,
Je travaille sur une appli web utilisant struts/hibernate. J'ai probleme pour faire une requete en utilisant les Criteria:
J'ai :
- une table FABRICANT qui contient les fabricant de produit,
- une table DENOMINATION qui contient les noms des produits
- une table PRODUIT qui contient les produits,
- une table MAGASIN qui contient les magasins
- une table d'association PRODUITS_MAGASIN
Les codes :Je souhaite avoir la liste des MagasinProduit pour lesquels le fabricant est "Toto" ou bien de Denomination "test"
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66 create table Fabrivant ( codeFabricant integer, -- c 'est la clé primaire codeDenomination integer, -- clé etrangere faisant reference à la table DENOMINATION primary key (codeFabricant ), foreign key (codeDenomination) reference DENOMINATION(codeDenomination)) la classe java associée : public class Fabricant { private int codeFabricant; private Denomination denominatio; ................code des proprietes....................................... } create table DENOMINATION ( codeDenomination integer --clé nom varchar2(50) ................... la classe public class Denomination { private int codeDenomination; private String nom; ................code des proprietes....................................... } create table produit { codeProduit integer, --clé codeFabricant integer, clé etrangere faisant reference au Fabricant .......................... la classe public class Produit { private int codeProfuit; Fabricant fabricant; .............code des proprietes................. } create table Magasin ( codeMagasin integer, --clé ......................................... la classe public class Magasin { private int codeMagasin; .............proprietes........................ } create table Magasins_Produit ( id varchar2(20), --clé codeMagasin integer, --clé etrangere faisant reference a un magasin codeProduit integer, --clé etrangere faisant reference a un produit ........................................... public class MagasinProduit { private String id; private int codeMagasin, private int codeProduit, ................propriete...........................
Pour commencer je dois taper quelque chose commeAvec ce que j'ai ecris ci-dessus j ai un "et" et non un "or". Est ce que quelqu'un connait un moyen pour faire le "or" entre le "nomFabricant" et "nom"
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3 List produitsmagasins = _session.createCriteria(MagasinProduit.class) .createCriteria("produit").createCriteria("reference").add(Expression.eq("nomFabricant", "Toto")) .createCriteria("fabricant").createCriteria("denomination").add(Expression.eq("nom", "test")).list();
Merci d'avance.
Partager