diff --git a/Natlab/src/main/java/fu/berlin/swp/datenverwaltung2020/natlab/Natlab/entity/Course.java b/Natlab/src/main/java/fu/berlin/swp/datenverwaltung2020/natlab/Natlab/entity/Course.java new file mode 100644 index 0000000000000000000000000000000000000000..150b91a4fa54d087a5a71337e97a2450911a155d --- /dev/null +++ b/Natlab/src/main/java/fu/berlin/swp/datenverwaltung2020/natlab/Natlab/entity/Course.java @@ -0,0 +1,53 @@ +package fu.berlin.swp.datenverwaltung2020.natlab.Natlab.entity; + +import lombok.AllArgsConstructor; +import lombok.Data; +import lombok.NoArgsConstructor; + +import javax.persistence.*; +import java.time.LocalDate; +import java.util.List; + +@Data +@NoArgsConstructor +@AllArgsConstructor +@Entity +@Table(name = "course") +public class Course { + + @Id + @GeneratedValue(strategy = GenerationType.AUTO) + @Column(name = "course_id") + private String id; + + @Column(name = "course_number") + private String courseNumber; + + @Column(name = "course_name") + private String name; + + @Column(name = "course_topic") + private String topic; + + @Column(name = "present_students") + private int presentStudents; + + @Column(name = "registeredS_students") + private int registeredStudents; + + @Column(name = "event_type") + private String eventType; + + @Column(name = "group_name") + private String groupName; + + @Column(name = "course_start") + private LocalDate courseStart; + + @ManyToMany + @JoinTable(name = "users_courses", + joinColumns = @JoinColumn(name = "course_id"), + inverseJoinColumns = @JoinColumn(name = "users_id")) + private List<User> users; + +} diff --git a/Natlab/src/main/java/fu/berlin/swp/datenverwaltung2020/natlab/Natlab/entity/User.java b/Natlab/src/main/java/fu/berlin/swp/datenverwaltung2020/natlab/Natlab/entity/User.java new file mode 100644 index 0000000000000000000000000000000000000000..5f72b3a9aef5b3dd8ef1308104531d7a1ed28a3d --- /dev/null +++ b/Natlab/src/main/java/fu/berlin/swp/datenverwaltung2020/natlab/Natlab/entity/User.java @@ -0,0 +1,37 @@ +package fu.berlin.swp.datenverwaltung2020.natlab.Natlab.entity; + +import lombok.AllArgsConstructor; +import lombok.Data; +import lombok.NoArgsConstructor; + +import javax.persistence.*; +import java.util.List; + +@Data +@NoArgsConstructor +@AllArgsConstructor +@Entity +@Table(name = "users") +public class User { + + @Id + @GeneratedValue(strategy = GenerationType.AUTO) + @Column(name = "users_id") + private int id; + + @Column(name = "first_name") + private String firstName; + + @Column(name = "last_name") + private String lastName; + + @Column(name = "email") + private String email; + + @Column(name = "password") + private String password; + + @ManyToMany(mappedBy = "users") + private List<Course> courses; + +} diff --git a/Natlab/src/main/resources/application.properties b/Natlab/src/main/resources/application.properties index 6996dbad45b3a8862db985fa5247f0bcf1cb840b..93f6b0515a504b55d905952b889f0f7a5b59b052 100644 --- a/Natlab/src/main/resources/application.properties +++ b/Natlab/src/main/resources/application.properties @@ -4,9 +4,9 @@ spring.datasource.driver-class-name=org.postgresql.Driver spring.datasource.username=postgres spring.datasource.password= -# The SQL dialect makes Hibernate generate better SQL for the chosen database -spring.jpa.properties.hibernate.dialect = org.hibernate.dialect.PostgreSQLDialect +spring.jpa.properties.hibernate.dialect=org.hibernate.dialect.PostgreSQLDialect +spring.jpa.database-platform=org.hibernate.dialect.PostgreSQL9Dialect + +spring.jpa.hibernate.ddl-auto=update -# Hibernate ddl auto (create, create-drop, validate, update) -spring.jpa.hibernate.ddl-auto = update