From b599574cd04c5934956b37feb89aa8aa65128402 Mon Sep 17 00:00:00 2001 From: CWinarski Date: Thu, 5 Apr 2018 07:45:41 -0400 Subject: [PATCH 1/9] Made Option class and tarted Poll class --- .../domain/Option.java | 35 +++++++++++++++++++ .../domain/Poll.java | 4 +++ 2 files changed, 39 insertions(+) create mode 100644 src/main/java/io/zipcoder/tc_spring_poll_application/domain/Option.java create mode 100644 src/main/java/io/zipcoder/tc_spring_poll_application/domain/Poll.java diff --git a/src/main/java/io/zipcoder/tc_spring_poll_application/domain/Option.java b/src/main/java/io/zipcoder/tc_spring_poll_application/domain/Option.java new file mode 100644 index 0000000..7b87a58 --- /dev/null +++ b/src/main/java/io/zipcoder/tc_spring_poll_application/domain/Option.java @@ -0,0 +1,35 @@ +package io.zipcoder.tc_spring_poll_application.domain; + +import javax.persistence.Column; +import javax.persistence.Entity; +import javax.persistence.GeneratedValue; +import javax.persistence.Id; + +@Entity // this means that a class can be mapped to a table. Just is a marker like Serializable +public class Option { + + @Id // specifies primary key of entity + @GeneratedValue // configures the way of increment of the specified column (field) + @Column(name = "OPTION_ID")// specifies mapped column for a persisitence property. Without this annotation the framework assumes the field's variable-name is the persistent property + private long id; + + @Column(name = "OPTION_VALUE")// specifies mapped column for persistence value + private String value; + + public long getId() { + return id; + } + + public void setId(long id) { + this.id = id; + } + + public String getValue() { + return value; + } + + public void setValue(String value) { + this.value = value; + } + +} diff --git a/src/main/java/io/zipcoder/tc_spring_poll_application/domain/Poll.java b/src/main/java/io/zipcoder/tc_spring_poll_application/domain/Poll.java new file mode 100644 index 0000000..aeb93af --- /dev/null +++ b/src/main/java/io/zipcoder/tc_spring_poll_application/domain/Poll.java @@ -0,0 +1,4 @@ +package io.zipcoder.tc_spring_poll_application.domain; + +public class Poll { +} From 956579ebad7649a1800f05999e2d4a0797a3d74e Mon Sep 17 00:00:00 2001 From: CWinarski Date: Thu, 5 Apr 2018 13:18:06 -0400 Subject: [PATCH 2/9] Made repositores and classes --- .../controller/PollController.java | 14 +++++++ .../domain/Poll.java | 41 +++++++++++++++++++ .../domain/Vote.java | 8 ++++ .../repositories/OptionRepository.java | 7 ++++ .../repositories/PollRepository.java | 7 ++++ .../repositories/VoteRepository.java | 7 ++++ 6 files changed, 84 insertions(+) create mode 100644 src/main/java/io/zipcoder/tc_spring_poll_application/controller/PollController.java create mode 100644 src/main/java/io/zipcoder/tc_spring_poll_application/domain/Vote.java create mode 100644 src/main/java/io/zipcoder/tc_spring_poll_application/repositories/OptionRepository.java create mode 100644 src/main/java/io/zipcoder/tc_spring_poll_application/repositories/PollRepository.java create mode 100644 src/main/java/io/zipcoder/tc_spring_poll_application/repositories/VoteRepository.java diff --git a/src/main/java/io/zipcoder/tc_spring_poll_application/controller/PollController.java b/src/main/java/io/zipcoder/tc_spring_poll_application/controller/PollController.java new file mode 100644 index 0000000..9c52b52 --- /dev/null +++ b/src/main/java/io/zipcoder/tc_spring_poll_application/controller/PollController.java @@ -0,0 +1,14 @@ +package io.zipcoder.tc_spring_poll_application.controller; + +import io.zipcoder.tc_spring_poll_application.repositories.PollRepository; +import org.springframework.web.bind.annotation.RestController; + +import javax.inject.Inject; + +@RestController +public class PollController { + + @Inject + private PollRepository pollRepository; + +} diff --git a/src/main/java/io/zipcoder/tc_spring_poll_application/domain/Poll.java b/src/main/java/io/zipcoder/tc_spring_poll_application/domain/Poll.java index aeb93af..06f0341 100644 --- a/src/main/java/io/zipcoder/tc_spring_poll_application/domain/Poll.java +++ b/src/main/java/io/zipcoder/tc_spring_poll_application/domain/Poll.java @@ -1,4 +1,45 @@ package io.zipcoder.tc_spring_poll_application.domain; +import javax.persistence.*; +import java.util.Set; + +@Entity public class Poll { + + @Id + @GeneratedValue + @Column(name = "Poll_ID") + private long id; + + @Column(name = "QUESTION") + private String question; + + @OneToMany(cascade = CascadeType.ALL) + @JoinColumn(name = "POLL_ID") + @OrderBy + private Set