Bonjour à tous,
J'essaie de faire une application web en utilisant angularjs et Spring (JPA, MVC, BOOT)
J'ai ce MCD :
https://www.dropbox.com/s/depd3oz5kw...nline.png?dl=0
Et ces classes-là :
PROFIL :
POST_LEVEL :
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 // one PROFIL can have N COMPETENCE_LEVEL // one PROFIL can have N EXPERIENCE // one PROFIL can have N POST_LEVEL @Entity @Table(name="profil") public class Profil { @Id @GeneratedValue(strategy=GenerationType.AUTO) @Column(name="id_profil") private Long idProfil; @OneToMany(mappedBy="profil") private List<CompetenceLevel> competenceLevels; @OneToMany(mappedBy="profil") private List<PostLevel> postLevels; @OneToMany(mappedBy="profil") private List<Experience> experiences; // DEFAULT CONSTRUCTOR // CONSTRUCTOR WITH PARAMETERS // GETTERS/SETTERS // NO TO_STRING FOR THE MOMENT... }
LEVEL :
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 // one POST_LEVEL have one POST // one POST_LEVEL have one LEVEL // one POST_LEVEL concern one PROFIL // one POST_LEVEL can concern N EXPERIENCE @Entity @Table(name="post_level") public class PostLevel { @Id @GeneratedValue(strategy=GenerationType.AUTO) @Column(name="id_post_level") private Long idPostLevel; @ManyToOne(fetch=FetchType.LAZY) @JoinColumn(name="id_post") private Post post; @ManyToOne(fetch=FetchType.LAZY) @JoinColumn(name="id_level") private Level level; @ManyToOne(fetch=FetchType.LAZY) @JoinColumn(name="id_profil") private Profil profil; @OneToMany(mappedBy="postLevel") private List<Experience> experiences; // DEFAULT CONSTRUCTOR // CONSTRUCTOR WITH PARAMETERS // GETTERS/SETTERS // NO TO_STRING FOR THE MOMENT... }
COMPETENCE_LEVEL :
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 // one LEVEL can concern N COMPETENCE_LEVEL // one LEVEL can concern N POST_LEVEL // LEVEL and POST and COMPETENCE are relatively similary. @Entity @Table(name="level") public class Level { @Id @GeneratedValue(strategy=GenerationType.AUTO) @Column(name="id_level") private Long idLevel; @Column(name="level") private String level; @OneToMany(mappedBy="level") private List<CompetenceLevel> competenceLevels; @OneToMany(mappedBy="level") private List<PostLevel> postLevels; // DEFAULT CONSTRUCTOR // CONSTRUCTOR WITH PARAMETERS // GETTERS/SETTERS // NO TO_STRING FOR THE MOMENT... }
EXPERIENCE :
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 // one COMPETENCE_LEVEL concern one PROFIL // one COMPETENCE_LEVEL have one COMPETENCE // one COMPETENCE_LEVEL have one LEVEL // one COMPETENCE_LEVEL can concern N EXPERIENCE @Entity @Table(name="competence_level") public class CompetenceLevel { @Id @GeneratedValue(strategy=GenerationType.AUTO) @Column(name="id_competence_level") private Long idCompetenceLevel; @ManyToOne(fetch=FetchType.LAZY) @JoinColumn(name="id_competence") private Competence competence; @ManyToOne(fetch=FetchType.LAZY) @JoinColumn(name="id_level") private Level level; @ManyToOne(fetch=FetchType.LAZY) @JoinColumn(name="id_profil") private Profil profil; @ManyToMany(mappedBy="competenceLevels") private List<Experience> experiences; // DEFAULT CONSTRUCTOR // CONSTRUCTOR WITH PARAMETERS // GETTERS/SETTERS // NO TO_STRING FOR THE MOMENT... }
Mon problème est que lorsque j'ajoute une COMPETENCE_LEVEL dans ma base de données MySQL, l'application se fige lorsque j'essaie de récupérer toutes les COMPETENCE_LEVEL d'un PROFIL. Surement qu'il y a un problème de boucle quelque part mais je ne vois pas où :/ Vous avez une idée ? Merci d'avance
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 // one EXPERIENCE concern one PROFIL // one EXPERIENCE can have N COMPETENCE_LEVEL // one EXPERIENCE can have one POST_LEVEL @Entity @Table(name="experience") public class Experience { @Id @GeneratedValue(strategy=GenerationType.AUTO) @Column(name="id_experience") private Long idExperience; @ManyToOne(fetch=FetchType.LAZY) @JoinColumn(name="id_profil") private Profil profil; @ManyToOne(fetch=FetchType.LAZY) @JoinColumn(name="id_post_level") private PostLevel postLevel; @ManyToMany @JoinTable(name = "experience_competence_level", joinColumns = @JoinColumn(name = "id_experience", referencedColumnName = "id_experience"), inverseJoinColumns = @JoinColumn(name = "id_competence_level", referencedColumnName = "id_competence_level")) private List<CompetenceLevel> competenceLevels; // DEFAULT CONSTRUCTOR // CONSTRUCTOR WITH PARAMETERS // GETTERS/SETTERS // NO TO_STRING FOR THE MOMENT... }.
Partager