Professional Documents
Culture Documents
Import Import Import: @entity @table @inheritance @discriminatorcolumn
Import Import Import: @entity @table @inheritance @discriminatorcolumn
Serializable;
import java.util.*;
import javax.persistence.*;
@Entity
@Table(name="Client")
public class Client implements Serializable {
@Id
@GeneratedValue(strategy=GenerationType.IDENTITY)
private Long code_cli ;
private String nom_cli;
/*à la demande*/
/*heritage*/
@OneToMany (mappedBy="client", fetch=FetchType.LAZY, cascade=CascadeType.ALL)
private Collection<Compte> comptes;
import java.io.Serializable;
import java.util.*;
import javax.persistence.*;
@Entity
@Table(name="Compte")
@Inheritance(strategy=InheritanceType.SINGLE_TABLE)
@DiscriminatorColumn(name="Type_CPT",
discriminatorType=DiscriminatorType.STRING, length=2)
public class Compte implements Serializable {
@Id
@GeneratedValue(strategy=GenerationType.IDENTITY)
private Long num_cpte;
private Date Date_Cr;
private Double solde;
@ManyToOne
@JoinColumn(name="code_cli")
private Client client;
@OneToMany(mappedBy="compte")
private Collection<Operations> operations;
@ManyToOne
@JoinColumn(name="num_emp")
private Employes employe;
}
import javax.persistence.*;
@Entity
@DiscriminatorValue("CC")
public class CompteCourant extends Compte {
}
import javax.persistence.DiscriminatorValue;
import javax.persistence.Entity;
@Entity
@DiscriminatorValue("CE")
public class CompteEpargne extends Compte {
import java.io.Serializable;
import java.util.*;
import javax.persistence.*;
@Entity
@Inheritance(strategy=InheritanceType.SINGLE_TABLE)
@DiscriminatorColumn(name="Type_OP", discriminatorType=DiscriminatorType.STRING,
length=1)
@Table(name="Operation")
public class Operations implements Serializable {
/**
*
*/
private static final long serialVersionUID = 1L;
@Id
@GeneratedValue(strategy=GenerationType.IDENTITY)
private Long num_op;
private Date date_op;
private double montant;
@ManyToOne
@JoinColumn(name="num_cpte")
private Compte compte;
@ManyToOne
@JoinColumn(name="num_emp")
private Employes employe;
}
import javax.persistence.*;
@Entity
@DiscriminatorValue("R")
public class Retrait extends Operations{
/**
*
*/
private static final long serialVersionUID = 1L;
import javax.persistence.*;
@Entity
@DiscriminatorValue("V")
public class Versement extends Operations{
/**
*
*/
private static final long serialVersionUID = 1L;
import java.io.Serializable;
import java.util.*;
import javax.persistence.*;
@Entity
public class Employes implements Serializable {
@Id
@GeneratedValue(strategy=GenerationType.IDENTITY)
private Long num_emp;
private String nom_emp;
@ManyToOne
@JoinColumn(name="num_emp")
private Employes supHierarchique;
@OneToMany(mappedBy="employe")
private Collection<Compte> comptes;
@ManyToMany
@JoinTable(name="Emp_Gr", joinColumns= @JoinColumn(name="num_emp"),
inverseJoinColumns= @JoinColumn (name="num_groupe"))
private Collection<Groupe> groupes;
}
import java.io.Serializable;
import java.util.*;
import javax.persistence.*;
@Entity
public class Groupe implements Serializable {
@Id
@GeneratedValue(strategy=GenerationType.IDENTITY)
private Long num_gr;
private String nom_gr;
@ManyToMany(mappedBy="groupes")
private Collection<Employes> employes;
import java.util.*;
import javax.persistence.*;
EntityManager em = null;
/* ************** 1 **************** */
String s1 = "select * from Compte where solde > 500 DESC";
/* ************** 2 **************** */
String s2 = "select num_cpte as 'NUM' from Compte where Date_Cr >= :date";
/* ************** 3 **************** */
String s3 = "SELECT cl from Client where (SELECT COUNT(*) FROM Compte C1 join
Client Cl2 using (code) where cl.code = cl2.code ) > 1";
/* ************** 4 **************** */
String s4 = "select * from Employes as e where e.nom_emp like '%A%M%' or
e.nom_emp like '%M%A%'";
List<Compte> listeEmployes =
(List<Compte>)query4.getResultList();
/* ************** 5 **************** */
String s5 = "select COUNT(*) from Employes where nom_emp like '*A*M*' or
'*M*A*'";
List<Compte> liste5Clients =
(List<Compte>)query5.getResultList();
/* ************** 6 **************** */
String s6 = "SELECT emp_gr ,COUNT(num_emp) FROM Employes BY emp_gr ";
Query query6 = em.createQuery(s6);