package com.PFE.ServerManager; import javax.persistence.*; import java.util.Set; @Entity @Table(name = "customer") // NE PAS utiliser "User" car c'est un mot clef réservé pour PostgreSQL public class Customer{ @Id //@GeneratedValue(strategy=GenerationType.AUTO) @Column(columnDefinition = "serial") /*la méthode ci-dessous oblige à connaitre le nombre de lignes déjà présentes dans la table customer au lancement du programme*/ /*@GeneratedValue(strategy = GenerationType.SEQUENCE, generator = "customer_seq_gen") @SequenceGenerator(name = "customer_seq_gen", sequenceName = "customer_id_seq", allocationSize=1, initialValue=3)*/ @Basic(optional = false) private Integer customer_id; @Column(name = "pseudo") private String pseudo; @Column(name = "password") private String password; @Column(name = "active") private int active; @ManyToMany(cascade = CascadeType.ALL) @JoinTable(name = "customer_role", joinColumns = @JoinColumn(name = "customer_id"), inverseJoinColumns = @JoinColumn(name = "role_id")) private Set roles; public void setRoles(Set roles) { this.roles = roles; } public Set getRoles() { return roles; } public String getRole(){ return roles.iterator().next().getRole(); } public void setId(Integer id) { this.customer_id = id; } public Integer getCustomer_id() { return customer_id; } public void setPseudo(String pseudo) { this.pseudo = pseudo; } public String getPseudo() { return pseudo; } public void setPassword(String password) { this.password = password; } public String getPassword() { return password; } public void setActive(int active) { this.active = active; } public int getActive() { return active; } }