summaryrefslogtreecommitdiffstats
path: root/src/main/java/com/odiparpack/back/odiparback/student/Student.java
diff options
context:
space:
mode:
Diffstat (limited to 'src/main/java/com/odiparpack/back/odiparback/student/Student.java')
-rw-r--r--src/main/java/com/odiparpack/back/odiparback/student/Student.java95
1 files changed, 95 insertions, 0 deletions
diff --git a/src/main/java/com/odiparpack/back/odiparback/student/Student.java b/src/main/java/com/odiparpack/back/odiparback/student/Student.java
new file mode 100644
index 0000000..aaf89ab
--- /dev/null
+++ b/src/main/java/com/odiparpack/back/odiparback/student/Student.java
@@ -0,0 +1,95 @@
+package com.odiparpack.back.odiparback.student;
+
+// Make sure to use this javax.persistence instead of Hibernate or other
+// provider (of what?)
+import javax.persistence.*;
+import java.time.LocalDate;
+import java.time.Period;
+
+@Entity // For Hibernate
+@Table // Table in DB
+public class Student {
+ @Id
+ @SequenceGenerator(
+ name = "student_sequence",
+ sequenceName = "student_sequence",
+ allocationSize = 1
+ )
+ @GeneratedValue(
+ strategy = GenerationType.SEQUENCE,
+ generator = "student_sequence"
+ )
+ private Long id;
+ private String name;
+ private String email;
+ private LocalDate dob;
+ @Transient
+ private Integer age;
+
+ public Student() {
+ }
+
+ public Student(Long id, String name, String email, LocalDate dob) {
+ this.id = id;
+ this.name = name;
+ this.email = email;
+ this.dob = dob;
+ }
+
+ public Student(String name, String email, LocalDate dob) {
+ this.name = name;
+ this.email = email;
+ this.dob = dob;
+ }
+
+ public Long getId() {
+ return id;
+ }
+
+ public void setId(Long id) {
+ this.id = id;
+ }
+
+ public String getName() {
+ return name;
+ }
+
+ public void setName(String name) {
+ this.name = name;
+ }
+
+ public String getEmail() {
+ return email;
+ }
+
+ public void setEmail(String email) {
+ this.email = email;
+ }
+
+ public LocalDate getDob() {
+ return dob;
+ }
+
+ public void setDob(LocalDate dob) {
+ this.dob = dob;
+ }
+
+ public Integer getAge() {
+ return Period.between(this.dob, LocalDate.now()).getYears();
+ }
+
+ public void setAge(Integer age) {
+ this.age = age;
+ }
+
+ @Override
+ public String toString() {
+ return "Student{" +
+ "id=" + id +
+ ", name='" + name + '\'' +
+ ", email='" + email + '\'' +
+ ", dob=" + dob +
+ ", age=" + age +
+ '}';
+ }
+}