Feat: fin des classes Athlete , Coach et Admin

This commit is contained in:
Amaël Kesteman
2026-01-05 12:48:20 +01:00
parent afb6b8c73e
commit d4a570f630
3 changed files with 62 additions and 15 deletions

View File

@@ -0,0 +1,30 @@
package hackathon.FrisbYEE.jpa;
import jakarta.persistence.GeneratedValue;
import jakarta.persistence.Id;
import lombok.Getter;
import lombok.NoArgsConstructor;
import lombok.Setter;
import jakarta.persistence.Access;
import jakarta.persistence.AccessType;
import jakarta.persistence.Entity;
@Entity
@Getter @Setter @NoArgsConstructor
@Access(AccessType.FIELD)
public class Admin {
@Id
@GeneratedValue
private Long id;
private String name;
public Admin(String name){
this.name = name;
}
@Override
public String toString() {
return "Admin [id=" + id + " , name=" + name + "]";
}
}

View File

@@ -3,26 +3,34 @@ package hackathon.FrisbYEE.jpa;
import jakarta.persistence.GeneratedValue;
import jakarta.persistence.Id;
import jakarta.persistence.ManyToMany;
import jakarta.persistence.ManyToOne;
import jakarta.persistence.OneToMany;
import lombok.Getter;
import lombok.NoArgsConstructor;
import lombok.Setter;
import java.time.LocalDateTime;
import java.io.Serializable;
import java.util.ArrayList;
import java.util.List;
import jakarta.persistence.Access;
import jakarta.persistence.AccessType;
import jakarta.persistence.CascadeType;
import jakarta.persistence.ElementCollection;
import jakarta.persistence.Entity;
@Entity
@Getter @Setter @NoArgsConstructor
@Access(AccessType.FIELD)
public class Athlete {
@Id
@GeneratedValue
private Long id;
private String name;
@ManyToMany(mappedBy = "athletes")
private List<Session> sessions = new ArrayList<>(); // plusieurs sessions sont possibles
public Athlete(String name){
this.name = name;
}
@Override
public String toString() {
return "Athlete [id=" + id + " , name=" + name + "]";
}
}

View File

@@ -2,27 +2,36 @@ package hackathon.FrisbYEE.jpa;
import jakarta.persistence.GeneratedValue;
import jakarta.persistence.Id;
import jakarta.persistence.ManyToMany;
import jakarta.persistence.ManyToOne;
import jakarta.persistence.OneToMany;
import lombok.Getter;
import lombok.NoArgsConstructor;
import lombok.Setter;
import java.time.LocalDateTime;
import java.io.Serializable;
import java.util.ArrayList;
import java.util.List;
import jakarta.persistence.Access;
import jakarta.persistence.AccessType;
import jakarta.persistence.CascadeType;
import jakarta.persistence.ElementCollection;
import jakarta.persistence.Entity;
@Entity
@Getter @Setter @NoArgsConstructor
@Access(AccessType.FIELD)
public class Coach {
@Id
@GeneratedValue
private Long id;
private String name;
@OneToMany(mappedBy = "session", cascade = CascadeType.PERSIST)
private List<Session> sessions = new ArrayList<>(); // Un coach peut avoir plusieurs sessions
public Coach(String name){
this.name = name;
}
@Override
public String toString() {
return "Coach [id=" + id + " , name=" + name + "]";
}
}