java - Spring JPA Hibernate ManyToMany -


i'm using springboot, spring jpa hibernate, i'm trying use manytomany annotation isn't working.

the join table created, never populated.

@entity @table(name = "commande") public class commande { @id @generatedvalue(strategy = generationtype.auto) private integer commandeid; private string etat; private string date_de_validation; @manytoone(cascade = cascadetype.all) private client clientid; @manytoone(cascade = cascadetype.all) private livreur livreurid; @manytoone(cascade = cascadetype.all) private livraison livraisonid; @manytomany @jointable(name = "join_produit_to_commande", joincolumns = { @joincolumn(name = "commandeid") }, inversejoincolumns = { @joincolumn(name = "produitid") }) private set<produit> produits = new hashset<produit>();;  public commande() { }  public commande(string etat, string date_de_validation, client clientid,         livreur livreurid, livraison livraisonid) {     setetat(etat);     setdate_de_validation(date_de_validation);     setclient(clientid);     setlivreur(livreurid);     setlivraison(livraisonid); }  public integer getcommandeid() {     return this.commandeid; }  public void setcommandeid(integer commandeid) {     this.commandeid = commandeid; }  public string getetat() {     return this.etat; }  public void setetat(string etat) {     this.etat = etat; }  public string getdate_de_validation() {     return this.date_de_validation; }  public void setdate_de_validation(string date_de_validation) {     this.date_de_validation = date_de_validation; }  public client getclient() {     return this.clientid; }  public void setclient(client clientid) {     this.clientid = clientid; }  public livreur getlivreur() {     return this.livreurid; }  public void setlivreur(livreur livreurid) {     this.livreurid = livreurid; }  public livraison getlivraison() {     return this.livraisonid; }  public void setlivraison(livraison livraisonid) {     this.livraisonid = livraisonid; }  public client getclientid() {     return clientid; }  public void setclientid(client clientid) {     this.clientid = clientid; }  public livreur getlivreurid() {     return livreurid; }  public void setlivreurid(livreur livreurid) {     this.livreurid = livreurid; }  public livraison getlivraisonid() {     return livraisonid; }  public void setlivraisonid(livraison livraisonid) {     this.livraisonid = livraisonid; }  public collection<produit> getproduits() {     return produits; }  public void setproduits(set<produit> produits) {     this.produits = produits; }  public string tostring() {     return "commandeid=" + commandeid + " etat=" + etat             + " date_de_validation=" + date_de_validation + " clientid="             + clientid + " livreurid=" + livreurid + " livraisonid="             + livraisonid; }  } 

this second class

@entity @table(name = "produit") public class produit { @id @generatedvalue(strategy = generationtype.auto) private integer produitid; private string libelle; private double poid; private string type; @manytomany(mappedby = "produits") private set<commande> commandes = new hashset<commande>();;  public produit() { }  public produit(string libelle, double poid, string type) {     setlibelle(libelle);     setpoid(poid);     settype(type); }  public string getlibelle() {     return this.libelle; }  public void setlibelle(string libelle) {     this.libelle = libelle; }  public double getpoid() {     return this.poid; }  public void setpoid(double poid) {     this.poid = poid; }  public string gettype() {     return this.type; }  public void settype(string type) {     this.type = type; }  public set<commande> getcommandes() {     return commandes; }  public void setcommandes(set<commande> commandes) {     this.commandes = commandes; }  public string tostring() {     return "libelle=" + libelle + " poid=" + poid + " type=" + type             + " produitid=" + produitid + " commandes : " + commandes; }  } 

and here unit testing

@runwith(springjunit4classrunner.class) @springapplicationconfiguration(classes = pfeapplication.class) @webappconfiguration @transactional @transactionconfiguration(defaultrollback = true) public class pfeapplicationtests {  @autowired private entrepriseservice service; @autowired private phoneservice pservice; @autowired private livreurservice lservice; @autowired private carservice cservice; @autowired private produitservice prservice; @autowired private clientservice clservice; @autowired private commandeservice cmdservice; @autowired private positionlivreurservice posservice; @autowired private livraisonservice livservice;  @test public void contextloads() { }  @test @transactional public void manytomanytest(){     produit produit1 = new produit("lavabo", 50, "cassable");     livreur livreur1 = new livreur("adadi", "soufiane", "03/03/1992", "0876543456");     client client1 = new client("ouali", "ouali@gmail.com", "0743453462", "fes", "nologo");     livraison livraison1 = new livraison("24/04/2015", "25/04/2015", false, false, livreur1);     commande commande1 = new commande("validé", "25/04/2015", client1, livreur1, livraison1);     produit1.getcommandes().add(commande1);     commande1.getproduits().add(produit1);     cmdservice.addcommande(commande1);     prservice.addproduit(produit1); } } 

this problem similar earlier posting of mine. see my original posting. solved myself - bug in implementation, if change set<> list<>, maybe work. case different, using spring implementation, knows ...


Comments

Popular posts from this blog

asp.net mvc - SSO between MVCForum and Umbraco7 -

Python Tkinter keyboard using bind -

ubuntu - Selenium Node Not Connecting to Hub, Not Opening Port -