Skip to content
Snippets Groups Projects
Commit f6032468 authored by TayBone2305's avatar TayBone2305
Browse files

Hibernate ORM for DB 2.0

parent 5b83fd1c
Branches JPA
No related tags found
1 merge request!2Jpa
......@@ -34,7 +34,10 @@
</connection>
</component>
<component name="DBNavigator.Project.DatabaseFileManager">
<open-files />
<open-files>
<object connection-id="1c72da42-0bf8-4e1f-be16-76f69d3e0611" object-ref="schemas/notenmanager/tables/kurs" />
<object connection-id="1c72da42-0bf8-4e1f-be16-76f69d3e0611" object-ref="schemas/notenmanager/tables/studiengang" />
</open-files>
</component>
<component name="DBNavigator.Project.DatabaseSessionManager">
<connection id="1c72da42-0bf8-4e1f-be16-76f69d3e0611" />
......@@ -43,6 +46,7 @@
<filter-actions connection-id="1c72da42-0bf8-4e1f-be16-76f69d3e0611" dataset="notenmanager.course" active-filter-id="EMPTY_FILTER" />
<filter-actions connection-id="1c72da42-0bf8-4e1f-be16-76f69d3e0611" dataset="notenmanager.coursesofstudy" active-filter-id="EMPTY_FILTER" />
<filter-actions connection-id="1c72da42-0bf8-4e1f-be16-76f69d3e0611" dataset="notenmanager.kurs" active-filter-id="EMPTY_FILTER" />
<filter-actions connection-id="1c72da42-0bf8-4e1f-be16-76f69d3e0611" dataset="notenmanager.studiengang" active-filter-id="EMPTY_FILTER" />
</component>
<component name="DBNavigator.Project.EditorStateManager">
<last-used-providers />
......
......@@ -4,33 +4,13 @@
<option name="autoReloadType" value="SELECTIVE" />
</component>
<component name="ChangeListManager">
<list default="true" id="0d616560-06e0-45af-8dd9-ccab83963a0f" name="Changes" comment="">
<change afterPath="$PROJECT_DIR$/.gitignore" afterDir="false" />
<change afterPath="$PROJECT_DIR$/.idea/dbnavigator.xml" afterDir="false" />
<change afterPath="$PROJECT_DIR$/.idea/jpa-buddy.xml" afterDir="false" />
<change afterPath="$PROJECT_DIR$/.idea/misc.xml" afterDir="false" />
<change afterPath="$PROJECT_DIR$/.idea/uiDesigner.xml" afterDir="false" />
<change afterPath="$PROJECT_DIR$/.idea/vcs.xml" afterDir="false" />
<change afterPath="$PROJECT_DIR$/.idea/workspace.xml" afterDir="false" />
<change afterPath="$PROJECT_DIR$/pom.xml" afterDir="false" />
<change afterPath="$PROJECT_DIR$/src/main/Application.java" afterDir="false" />
<change afterPath="$PROJECT_DIR$/src/main/JpaService.java" afterDir="false" />
<change afterPath="$PROJECT_DIR$/src/main/abstractClasses/UniversityMember.java" afterDir="false" />
<change afterPath="$PROJECT_DIR$/src/main/classes/Course.java" afterDir="false" />
<change afterPath="$PROJECT_DIR$/src/main/classes/CoursesOfStudy.java" afterDir="false" />
<change afterPath="$PROJECT_DIR$/src/main/classes/Enrollment.java" afterDir="false" />
<change afterPath="$PROJECT_DIR$/src/main/classes/Lecturer.java" afterDir="false" />
<change afterPath="$PROJECT_DIR$/src/main/classes/Student.java" afterDir="false" />
<change afterPath="$PROJECT_DIR$/src/main/enumeration/CourseType.java" afterDir="false" />
<change afterPath="$PROJECT_DIR$/src/main/enumeration/Degree.java" afterDir="false" />
<change afterPath="$PROJECT_DIR$/src/main/enumeration/ExamType.java" afterDir="false" />
<change afterPath="$PROJECT_DIR$/src/main/enumeration/FieldOfStudy.java" afterDir="false" />
<change afterPath="$PROJECT_DIR$/src/main/enumeration/Gender.java" afterDir="false" />
<change afterPath="$PROJECT_DIR$/src/main/enumeration/Mark.java" afterDir="false" />
<change afterPath="$PROJECT_DIR$/src/main/enumeration/Semester.java" afterDir="false" />
<change afterPath="$PROJECT_DIR$/src/main/enumeration/Status.java" afterDir="false" />
<change afterPath="$PROJECT_DIR$/src/main/interfaces/Calculable.java" afterDir="false" />
<change afterPath="$PROJECT_DIR$/src/main/resources/META-INF/persistence.xml" afterDir="false" />
<list default="true" id="0d616560-06e0-45af-8dd9-ccab83963a0f" name="Changes" comment="Hibernate ORM for DB">
<change beforePath="$PROJECT_DIR$/.idea/workspace.xml" beforeDir="false" afterPath="$PROJECT_DIR$/.idea/workspace.xml" afterDir="false" />
<change beforePath="$PROJECT_DIR$/src/main/Application.java" beforeDir="false" afterPath="$PROJECT_DIR$/src/main/Application.java" afterDir="false" />
<change beforePath="$PROJECT_DIR$/src/main/classes/Course.java" beforeDir="false" afterPath="$PROJECT_DIR$/src/main/classes/Course.java" afterDir="false" />
<change beforePath="$PROJECT_DIR$/src/main/classes/CoursesOfStudy.java" beforeDir="false" afterPath="$PROJECT_DIR$/src/main/classes/CoursesOfStudy.java" afterDir="false" />
<change beforePath="$PROJECT_DIR$/src/main/classes/Enrollment.java" beforeDir="false" afterPath="$PROJECT_DIR$/src/main/classes/Enrollment.java" afterDir="false" />
<change beforePath="$PROJECT_DIR$/src/main/classes/Lecturer.java" beforeDir="false" afterPath="$PROJECT_DIR$/src/main/classes/Lecturer.java" afterDir="false" />
</list>
<option name="SHOW_DIALOG" value="false" />
<option name="HIGHLIGHT_CONFLICTS" value="true" />
......@@ -117,6 +97,14 @@
<option name="presentableId" value="Default" />
<updated>1654440427551</updated>
</task>
<task id="LOCAL-00001" summary="Hibernate ORM for DB">
<created>1655210036433</created>
<option name="number" value="00001" />
<option name="presentableId" value="LOCAL-00001" />
<option name="project" value="LOCAL" />
<updated>1655210036433</updated>
</task>
<option name="localTasksCounter" value="2" />
<servers />
</component>
<component name="Vcs.Log.Tabs.Properties">
......@@ -132,5 +120,7 @@
</component>
<component name="VcsManagerConfiguration">
<option name="ADD_EXTERNAL_FILES_SILENTLY" value="true" />
<MESSAGE value="Hibernate ORM for DB" />
<option name="LAST_COMMIT_MESSAGE" value="Hibernate ORM for DB" />
</component>
</project>
\ No newline at end of file
import classes.*;
import enumeration.*;
import java.time.Duration;
/**
* Defines the entry point of the Java application.
*/
......@@ -14,9 +16,15 @@ public class Application
{
jpaService.runInTransaction(entityManager -> {
// name, semester, courseType, sws, ects, examType, isCredited
entityManager.persist(new Course("Numerische Methoden", Semester.SIXTH.getSemester(), CourseType.REQUIRED.getCourseType(), 4, 5, ExamType.WRITTEN.getExamType(), null));
entityManager.persist(new Course("Echtzeitsysteme", Semester.SIXTH.getSemester(), CourseType.REQUIRED.getCourseType(), 4, 5, ExamType.WRITTEN.getExamType(), null));
entityManager.persist(new Course("Digitale Signalverarbeitung", Semester.SIXTH.getSemester(), CourseType.REQUIRED.getCourseType(), 4, 5, ExamType.WRITTEN.getExamType(), null));
//entityManager.persist(new Course("Numerische Methoden", Semester.SIXTH.getSemester(), CourseType.REQUIRED.getCourseType(), 4, 5, ExamType.WRITTEN.getExamType(), null));
//entityManager.persist(new Course("Echtzeitsysteme", Semester.SIXTH.getSemester(), CourseType.REQUIRED.getCourseType(), 4, 5, ExamType.WRITTEN.getExamType(), null));
//entityManager.persist(new Course("Digitale Signalverarbeitung", Semester.SIXTH.getSemester(), CourseType.REQUIRED.getCourseType(), 4, 5, ExamType.WRITTEN.getExamType(), null));
//int id, String name, String degree, int duration, int fees, String fieldOfStudy
CoursesOfStudy coursesOfStudy = new CoursesOfStudy("Angewandte Informatik", Degree.BACHELOR_OF_SCIENCE.getDegree(), 7, 62, FieldOfStudy.B_ACS_EMBEDDED_SYSTEMS.getFieldOfStudy());
coursesOfStudy.addCourse(new Course("Systemprogrammierung", Semester.SIXTH.getSemester(), CourseType.REQUIRED.getCourseType(), 4, 5, ExamType.WRITTEN.getExamType(), null));
entityManager.persist(coursesOfStudy);
return null;
});
......
......@@ -2,7 +2,6 @@ package classes;
import jakarta.persistence.*;
import java.util.Objects;
import java.util.Set;
@Entity
@Table(name = "Kurs")
......@@ -147,4 +146,9 @@ public class Course
{
isCredited = credited;
}
public void setCoursesOfStudy(CoursesOfStudy coursesOfStudy)
{
this.coursesOfStudy = coursesOfStudy;
}
}
......@@ -35,20 +35,28 @@ public class CoursesOfStudy
cascade = CascadeType.ALL,
orphanRemoval = true
)
private List<CoursesOfStudy> courses = new ArrayList<>();
private List<Course> courses = new ArrayList<>();
@ManyToOne
@JoinColumn(name = "courses_of_study_id")
private CoursesOfStudy coursesOfStudy;
public CoursesOfStudy getCoursesOfStudy() {
return coursesOfStudy;
}
/*
@ManyToOne(cascade = CascadeType.ALL)
@JoinColumn(name = "courses_of_study_id")
private CoursesOfStudy coursesOfStudy;
*/
public CoursesOfStudy()
{
}
public CoursesOfStudy(int id, String name, String degree, int duration, int fees, String fieldOfStudy)
public CoursesOfStudy(String name, String degree, int duration, int fees, String fieldOfStudy)
{
this.id = id;
this.name = name;
this.degree = degree;
this.duration = duration;
......@@ -71,16 +79,6 @@ public class CoursesOfStudy
return Objects.hash(id);
}
public CoursesOfStudy getCoursesOfStudy()
{
return coursesOfStudy;
}
public void setCoursesOfStudy(CoursesOfStudy coursesOfStudy)
{
this.coursesOfStudy = coursesOfStudy;
}
public int getId()
{
return id;
......@@ -141,15 +139,15 @@ public class CoursesOfStudy
this.fieldOfStudy = fieldOfStudy;
}
/*public void addComment(Course course)
public void addCourse(Course course)
{
courses.add(course);
course.setCourse(this);
course.setCoursesOfStudy(this);
}
public void removeComment(Course course)
public void removeCourse(Course course)
{
courses.remove(course);
course.setCourse(this);
}*/
course.setCoursesOfStudy(null);
}
}
......@@ -24,6 +24,7 @@ public class Enrollment
@Column(name = "Datum der Anmeldung")
private LocalDateTime enrollmentDate;
@Column(name = "Note")
private double grade;
public Enrollment()
......
......@@ -9,7 +9,7 @@ import jakarta.persistence.Table;
@Table(name = "Dozent")
public class Lecturer extends UniversityMember
{
@Column(name = "Fakultät")
@Column(name = "Fakultaet")
String faculty;
public Lecturer()
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment