correction métier (liaison incorrecte par rapport au graph), graph incomplet, correction ambiguïté de certain nom de variable des classes métier
This commit is contained in:
13
README.md
13
README.md
@@ -13,10 +13,10 @@ classDiagram
|
|||||||
class Utilisateur {
|
class Utilisateur {
|
||||||
-id : int
|
-id : int
|
||||||
-name : String
|
-name : String
|
||||||
-session : List<Session>
|
-sessions : List<Session>
|
||||||
-email : String
|
-email : String
|
||||||
-password : String
|
-password : String
|
||||||
-quizzs : String
|
-quizzs : List<Quizz>
|
||||||
}
|
}
|
||||||
class Session{
|
class Session{
|
||||||
-id : int
|
-id : int
|
||||||
@@ -26,9 +26,10 @@ classDiagram
|
|||||||
-theme : String
|
-theme : String
|
||||||
}
|
}
|
||||||
class Quizz{
|
class Quizz{
|
||||||
-session: Session
|
-sessions: List<Session>
|
||||||
-id : int
|
-id : int
|
||||||
-utilisateur: Utilisateur
|
-createur : Utilisateur
|
||||||
|
-quizz : Quizz
|
||||||
}
|
}
|
||||||
class Reponse{
|
class Reponse{
|
||||||
-id : int
|
-id : int
|
||||||
@@ -39,11 +40,11 @@ classDiagram
|
|||||||
-choix : ArrayList<String>
|
-choix : ArrayList<String>
|
||||||
}
|
}
|
||||||
class ReponseCourte{
|
class ReponseCourte{
|
||||||
-value : String
|
|
||||||
}
|
}
|
||||||
class Question{
|
class Question{
|
||||||
-id : int
|
-id : int
|
||||||
-reponse: Reponse
|
-enonce : String
|
||||||
|
-reponse : Reponse
|
||||||
}
|
}
|
||||||
```
|
```
|
||||||
|
|
||||||
|
|||||||
@@ -34,7 +34,7 @@ public class SessionDAO extends AbstractJpaDao<Integer, Session> {
|
|||||||
EntityTransaction t = em.getTransaction();
|
EntityTransaction t = em.getTransaction();
|
||||||
t.begin();
|
t.begin();
|
||||||
|
|
||||||
q.setSession(s);
|
q.getSessions().add(s);
|
||||||
s.getQuizzs().add(q);
|
s.getQuizzs().add(q);
|
||||||
em.merge(s);
|
em.merge(s);
|
||||||
t.commit();
|
t.commit();
|
||||||
|
|||||||
@@ -28,7 +28,7 @@ public class UtilisateurDAO extends AbstractJpaDao<Integer, Utilisateur> {
|
|||||||
Utilisateur u = em.find(Utilisateur.class, userId);
|
Utilisateur u = em.find(Utilisateur.class, userId);
|
||||||
|
|
||||||
//FAUT AJOUTER OWNING SIDE ( Ici u --> s)
|
//FAUT AJOUTER OWNING SIDE ( Ici u --> s)
|
||||||
u.getSession().add(s);
|
u.getSessions().add(s);
|
||||||
//Jsp il faut birectionnelle ou pas?
|
//Jsp il faut birectionnelle ou pas?
|
||||||
s.getUtilisateurs().add(u);
|
s.getUtilisateurs().add(u);
|
||||||
em.merge(u);
|
em.merge(u);
|
||||||
|
|||||||
@@ -117,12 +117,12 @@ public class JpaTest {
|
|||||||
cqSess.select(sessRoot).where(cb.equal(sessRoot.get("id"), sessionId));
|
cqSess.select(sessRoot).where(cb.equal(sessRoot.get("id"), sessionId));
|
||||||
Session s1 = manager.createQuery(cqSess).getSingleResult();
|
Session s1 = manager.createQuery(cqSess).getSingleResult();
|
||||||
|
|
||||||
List<Session> ls= u1.getSession();
|
List<Session> ls= u1.getSessions();
|
||||||
ls.add(s1);
|
ls.add(s1);
|
||||||
u1.setSession(ls);
|
u1.setSessions(ls);
|
||||||
Quizz quizz1 = new Quizz();
|
Quizz quizz1 = new Quizz();
|
||||||
quizz1.setUtilisateur(u1);
|
quizz1.setCreateur(u1);
|
||||||
quizz1.setSession(s1);
|
quizz1.getSessions().add(s1);
|
||||||
|
|
||||||
manager.persist(quizz1);
|
manager.persist(quizz1);
|
||||||
manager.merge(u1);
|
manager.merge(u1);
|
||||||
@@ -143,8 +143,8 @@ public class JpaTest {
|
|||||||
|
|
||||||
List<Quizz> quizzs = manager.createQuery(cq).getResultList();
|
List<Quizz> quizzs = manager.createQuery(cq).getResultList();
|
||||||
for (Quizz q : quizzs) {
|
for (Quizz q : quizzs) {
|
||||||
System.out.println("Quizz ID: " + q.getId() + ", User: " + q.getUtilisateur().getName() +
|
System.out.println("Quizz ID: " + q.getId() + ", User: " + q.getCreateur().getName() +
|
||||||
", Session ID: " + q.getSession().getId());
|
", nb session: " + q.getSessions().size());
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -15,7 +15,7 @@ public class Question implements Serializable {
|
|||||||
@Id
|
@Id
|
||||||
@GeneratedValue(strategy = GenerationType.IDENTITY)
|
@GeneratedValue(strategy = GenerationType.IDENTITY)
|
||||||
private int id;
|
private int id;
|
||||||
private String question;
|
private String enonce;
|
||||||
|
|
||||||
@OneToOne(cascade = CascadeType.ALL)
|
@OneToOne(cascade = CascadeType.ALL)
|
||||||
@JoinColumn(name ="bonne_reponse", referencedColumnName = "id")
|
@JoinColumn(name ="bonne_reponse", referencedColumnName = "id")
|
||||||
|
|||||||
@@ -18,12 +18,12 @@ public class Quizz implements Serializable {
|
|||||||
@GeneratedValue
|
@GeneratedValue
|
||||||
private int id;
|
private int id;
|
||||||
|
|
||||||
@ManyToOne
|
@ManyToMany
|
||||||
private Session session;
|
private List<Session> sessions = new ArrayList<Session>();
|
||||||
|
|
||||||
@ManyToOne
|
@ManyToOne
|
||||||
@JoinColumn(name="id_utilisateur")
|
@JoinColumn(name="id_utilisateur")
|
||||||
private Utilisateur utilisateur;
|
private Utilisateur createur;
|
||||||
|
|
||||||
@OneToMany(mappedBy = "quizz", cascade = CascadeType.ALL, orphanRemoval = true)
|
@OneToMany(mappedBy = "quizz", cascade = CascadeType.ALL, orphanRemoval = true)
|
||||||
private List<Question> questions=new ArrayList<Question>();
|
private List<Question> questions=new ArrayList<Question>();
|
||||||
|
|||||||
@@ -21,10 +21,10 @@ public class Session implements Serializable {
|
|||||||
@Column(unique=true)
|
@Column(unique=true)
|
||||||
private int codePIN;
|
private int codePIN;
|
||||||
|
|
||||||
@OneToMany(mappedBy="session")
|
@ManyToMany(mappedBy="sessions")
|
||||||
private List<Quizz> quizzs = new ArrayList<>();
|
private List<Quizz> quizzs = new ArrayList<>();
|
||||||
|
|
||||||
@ManyToMany(mappedBy = "session")
|
@ManyToMany(mappedBy = "sessions")
|
||||||
private List<Utilisateur> utilisateurs = new ArrayList<>();
|
private List<Utilisateur> utilisateurs = new ArrayList<>();
|
||||||
private String theme;
|
private String theme;
|
||||||
}
|
}
|
||||||
@@ -26,8 +26,8 @@ public class Utilisateur implements Serializable {
|
|||||||
joinColumns = @JoinColumn(name="utilisateur_id"),
|
joinColumns = @JoinColumn(name="utilisateur_id"),
|
||||||
inverseJoinColumns = @JoinColumn(name = "session_id")
|
inverseJoinColumns = @JoinColumn(name = "session_id")
|
||||||
)
|
)
|
||||||
private List<Session> session= new ArrayList<>();;
|
private List<Session> sessions= new ArrayList<>();;
|
||||||
|
|
||||||
@OneToMany(mappedBy = "utilisateur")
|
@OneToMany(mappedBy = "createur")
|
||||||
private List<Quizz> quizzs;
|
private List<Quizz> quizzs;
|
||||||
}
|
}
|
||||||
@@ -42,7 +42,7 @@ public class QuestionInfo extends HttpServlet {
|
|||||||
return ;
|
return ;
|
||||||
}
|
}
|
||||||
Question question = new Question();
|
Question question = new Question();
|
||||||
question.setQuestion(ennonce);
|
question.setEnonce(ennonce);
|
||||||
|
|
||||||
List<String> listRep = Arrays.asList(reponse.split("\n"));
|
List<String> listRep = Arrays.asList(reponse.split("\n"));
|
||||||
|
|
||||||
@@ -82,7 +82,7 @@ public class QuestionInfo extends HttpServlet {
|
|||||||
|
|
||||||
resp.getWriter().println(
|
resp.getWriter().println(
|
||||||
"<HTML>\n<BODY>\n" +
|
"<HTML>\n<BODY>\n" +
|
||||||
"<H1> Question \"" + question.getQuestion() + "\" creee </H1>" +
|
"<H1> Question \"" + question.getEnonce() + "\" creee </H1>" +
|
||||||
"</BODY></HTML>"
|
"</BODY></HTML>"
|
||||||
);
|
);
|
||||||
return ;
|
return ;
|
||||||
|
|||||||
@@ -46,7 +46,7 @@ public class QuizzInfo extends HttpServlet {
|
|||||||
return ;
|
return ;
|
||||||
}
|
}
|
||||||
Quizz quizz = new Quizz();
|
Quizz quizz = new Quizz();
|
||||||
quizz.setUtilisateur(u_cree_quizz);
|
quizz.setCreateur(u_cree_quizz);
|
||||||
//quizz.setSession(s_attached);
|
//quizz.setSession(s_attached);
|
||||||
quizzDAO.create(quizz);
|
quizzDAO.create(quizz);
|
||||||
|
|
||||||
|
|||||||
@@ -72,13 +72,13 @@ public class Show extends HttpServlet {
|
|||||||
result += "<div class=\"quizz\">";
|
result += "<div class=\"quizz\">";
|
||||||
result += "quizz n°" + quizz.getId() + "<br/>";
|
result += "quizz n°" + quizz.getId() + "<br/>";
|
||||||
result += "<div class=\"tabulation\">";
|
result += "<div class=\"tabulation\">";
|
||||||
result += "Admin" + quizz.getUtilisateur().getEmail() + " (id: " + quizz.getUtilisateur().getId() + ") <br/>";
|
result += "Createur : " + quizz.getCreateur().getEmail() + " (id: " + quizz.getCreateur().getId() + ") <br/>";
|
||||||
result += "nb Question :" + quizz.getQuestions().size() +"<br/>";
|
result += "nb Question : " + quizz.getQuestions().size() +"<br/>";
|
||||||
|
|
||||||
|
|
||||||
for (Question question : quizz.getQuestions()) {
|
for (Question question : quizz.getQuestions()) {
|
||||||
result += "<div class=\"question\">";
|
result += "<div class=\"question\">";
|
||||||
result += "Q" + question.getId() + " Ennoncé : "+ question.getQuestion() + "<br/>";
|
result += "Q" + question.getId() + " Ennoncé : "+ question.getEnonce() + "<br/>";
|
||||||
|
|
||||||
|
|
||||||
result += "<b>Choix de réponse : </b><br/>";
|
result += "<b>Choix de réponse : </b><br/>";
|
||||||
|
|||||||
Reference in New Issue
Block a user