rebase and resubmit

Change-Id: I840888ad5aadceaacb5cd64c6472614cd82ffe17
diff --git a/src/main/java/entity/Post.java b/src/main/java/entity/Post.java
new file mode 100644
index 0000000..1593ca0
--- /dev/null
+++ b/src/main/java/entity/Post.java
@@ -0,0 +1,46 @@
+package entity;
+
+import java.util.Date;
+
+import javax.persistence.Column;
+import javax.persistence.Entity;
+import javax.persistence.ForeignKey;
+import javax.persistence.Id;
+import javax.persistence.JoinColumn;
+import javax.persistence.Lob;
+import javax.persistence.ManyToOne;
+import javax.persistence.Table;
+import javax.persistence.Temporal;
+import javax.persistence.TemporalType;
+
+@Entity
+@Table(name = "Post")
+public class Post {
+    @Id
+    @Column(name = "post_id", length = 64, nullable = false)
+    public String postid;
+
+    @Column(name = "title", length = 255, nullable = false)
+    public String posttitle;
+
+    @Lob
+    @Column(name = "content", nullable = false)
+    public String postcontent;
+
+    @Column(name = "author_id", length = 36, nullable = false)
+    public String postuserid;
+
+    @ManyToOne(optional = false)
+    @JoinColumn(name = "author_id", referencedColumnName = "user_id", foreignKey = @ForeignKey(name = "fk_post_user"), insertable = false, updatable = false)
+    public User author;
+
+    @Column(name = "created_at", nullable = false)
+    @Temporal(TemporalType.TIMESTAMP)
+    public Date posttime;
+
+    @Column(name = "reply_count", nullable = false)
+    public int replytime;
+
+    @Column(name = "view_count", nullable = false)
+    public int readtime;
+}