From 2a7d7db68db23759647942de02f070d603bfa3d1 Mon Sep 17 00:00:00 2001 From: Gabrielle Lima Date: Fri, 15 Apr 2022 01:22:51 -0300 Subject: [PATCH 1/4] feature: add first domain class --- pom.xml | 18 ++++++++++++++++-- 1 file changed, 16 insertions(+), 2 deletions(-) diff --git a/pom.xml b/pom.xml index 440d200..3d6e4a0 100644 --- a/pom.xml +++ b/pom.xml @@ -1,12 +1,13 @@ - 4.0.0 org.springframework.boot spring-boot-starter-parent 2.6.6 - + com.java.dojo recipes @@ -36,6 +37,19 @@ spring-boot-starter-test test + + org.springframework.boot + spring-boot-starter-data-jpa + + + org.springframework.boot + spring-boot-devtools + + + com.h2database + h2 + runtime + From cb362ae959e7056eebf0e2ee77ad602e7d535025 Mon Sep 17 00:00:00 2001 From: Gabrielle Lima Date: Sat, 23 Apr 2022 00:57:52 -0300 Subject: [PATCH 2/4] feature: add modeled classes --- .../java/dojo/recipes/entities/Comment.java | 26 +++++++++++++++++ .../com/java/dojo/recipes/entities/Post.java | 29 +++++++++++++++++++ .../java/dojo/recipes/entities/Recipe.java | 24 +++++++++++++++ .../com/java/dojo/recipes/entities/User.java | 26 +++++++++++++++++ .../resources/application-test.properties | 5 ++++ src/main/resources/application.properties | 4 ++- 6 files changed, 113 insertions(+), 1 deletion(-) create mode 100644 src/main/java/com/java/dojo/recipes/entities/Comment.java create mode 100644 src/main/java/com/java/dojo/recipes/entities/Post.java create mode 100644 src/main/java/com/java/dojo/recipes/entities/Recipe.java create mode 100644 src/main/java/com/java/dojo/recipes/entities/User.java create mode 100644 src/main/resources/application-test.properties diff --git a/src/main/java/com/java/dojo/recipes/entities/Comment.java b/src/main/java/com/java/dojo/recipes/entities/Comment.java new file mode 100644 index 0000000..5f3e0c5 --- /dev/null +++ b/src/main/java/com/java/dojo/recipes/entities/Comment.java @@ -0,0 +1,26 @@ +package com.java.dojo.recipes.entities; + +import javax.persistence.Entity; +import javax.persistence.Table; + +import lombok.AllArgsConstructor; +import lombok.Builder; +import lombok.Data; +import lombok.EqualsAndHashCode; +import lombok.NoArgsConstructor; + +@AllArgsConstructor +@NoArgsConstructor +@Data +@Entity +@Builder +@EqualsAndHashCode(of = "id") +@Table(name = "comment") +public class Comment { + private Long id; + private Long post_id; + private String username; + private String content; + private String data; + +} diff --git a/src/main/java/com/java/dojo/recipes/entities/Post.java b/src/main/java/com/java/dojo/recipes/entities/Post.java new file mode 100644 index 0000000..550901c --- /dev/null +++ b/src/main/java/com/java/dojo/recipes/entities/Post.java @@ -0,0 +1,29 @@ +package com.java.dojo.recipes.entities; + +import javax.persistence.Entity; +import javax.persistence.Table; + +import lombok.AllArgsConstructor; +import lombok.Builder; +import lombok.Data; +import lombok.EqualsAndHashCode; +import lombok.NoArgsConstructor; + +@AllArgsConstructor +@NoArgsConstructor +@Data +@Entity +@Builder +@EqualsAndHashCode(of = "id") +@Table(name = "post") +public class Post { + + private Long id; + private Long user_id; + private String username; + private String imageUrl; + private String title; + private String content; + private String data; + +} diff --git a/src/main/java/com/java/dojo/recipes/entities/Recipe.java b/src/main/java/com/java/dojo/recipes/entities/Recipe.java new file mode 100644 index 0000000..2109541 --- /dev/null +++ b/src/main/java/com/java/dojo/recipes/entities/Recipe.java @@ -0,0 +1,24 @@ +package com.java.dojo.recipes.entities; + +import java.util.ArrayList; +import java.util.List; + +import javax.persistence.Entity; + +import lombok.AllArgsConstructor; +import lombok.Builder; +import lombok.Getter; +import lombok.Setter; + +@Entity +@Getter +@Setter +@AllArgsConstructor +@Builder +public class Recipe { + + private List ingredients = new ArrayList<>(); + private List preparingMode = new ArrayList<>(); + + +} diff --git a/src/main/java/com/java/dojo/recipes/entities/User.java b/src/main/java/com/java/dojo/recipes/entities/User.java new file mode 100644 index 0000000..82661b1 --- /dev/null +++ b/src/main/java/com/java/dojo/recipes/entities/User.java @@ -0,0 +1,26 @@ +package com.java.dojo.recipes.entities; + +import javax.persistence.Entity; +import javax.persistence.Table; + +import lombok.AllArgsConstructor; +import lombok.Builder; +import lombok.Data; +import lombok.EqualsAndHashCode; +import lombok.NoArgsConstructor; + +@AllArgsConstructor +@NoArgsConstructor +@Data +@Entity +@Builder +@EqualsAndHashCode(of = "id") +@Table(name = "user") +public class User { + + private Long id; + private String name; + private String surname; + private String email; + private String password; +} diff --git a/src/main/resources/application-test.properties b/src/main/resources/application-test.properties new file mode 100644 index 0000000..29e638b --- /dev/null +++ b/src/main/resources/application-test.properties @@ -0,0 +1,5 @@ +spring.datasource.url=jdbc:h2:mem:testdb +spring.datasource.username=sa +spring.datasource.password= +spring.h2.console.enabled=true +spring.h2.console.path=/h2-console diff --git a/src/main/resources/application.properties b/src/main/resources/application.properties index 8b13789..7ac4b53 100644 --- a/src/main/resources/application.properties +++ b/src/main/resources/application.properties @@ -1 +1,3 @@ - +spring.profiles.active=test +spring.jpa.open-in-view=false +spring.jpa.properties.hibernate.jdbc.time_zone=UTC From c2d430d157fa3f6be350fe42fce9f6793ee7a51e Mon Sep 17 00:00:00 2001 From: Gabrielle Lima Date: Wed, 17 Aug 2022 15:31:07 -0300 Subject: [PATCH 3/4] Classes arrumadas --- .../java/com/java/dojo/recipes/entities/Comment.java | 11 ++++++----- .../java/com/java/dojo/recipes/entities/Post.java | 11 ++++++----- .../java/com/java/dojo/recipes/entities/Recipe.java | 3 ++- .../java/com/java/dojo/recipes/entities/User.java | 11 ++++++----- 4 files changed, 20 insertions(+), 16 deletions(-) diff --git a/src/main/java/com/java/dojo/recipes/entities/Comment.java b/src/main/java/com/java/dojo/recipes/entities/Comment.java index 5f3e0c5..0698e64 100644 --- a/src/main/java/com/java/dojo/recipes/entities/Comment.java +++ b/src/main/java/com/java/dojo/recipes/entities/Comment.java @@ -1,22 +1,23 @@ package com.java.dojo.recipes.entities; import javax.persistence.Entity; +import javax.persistence.GeneratedValue; +import javax.persistence.GenerationType; +import javax.persistence.Id; import javax.persistence.Table; +import lombok.AccessLevel; import lombok.AllArgsConstructor; import lombok.Builder; -import lombok.Data; -import lombok.EqualsAndHashCode; import lombok.NoArgsConstructor; -@AllArgsConstructor +@AllArgsConstructor(access = AccessLevel.PRIVATE) @NoArgsConstructor -@Data @Entity @Builder -@EqualsAndHashCode(of = "id") @Table(name = "comment") public class Comment { + @Id @GeneratedValue(strategy = GenerationType.IDENTITY) private Long id; private Long post_id; private String username; diff --git a/src/main/java/com/java/dojo/recipes/entities/Post.java b/src/main/java/com/java/dojo/recipes/entities/Post.java index 550901c..0355293 100644 --- a/src/main/java/com/java/dojo/recipes/entities/Post.java +++ b/src/main/java/com/java/dojo/recipes/entities/Post.java @@ -1,23 +1,24 @@ package com.java.dojo.recipes.entities; import javax.persistence.Entity; +import javax.persistence.GeneratedValue; +import javax.persistence.GenerationType; +import javax.persistence.Id; import javax.persistence.Table; +import lombok.AccessLevel; import lombok.AllArgsConstructor; import lombok.Builder; -import lombok.Data; -import lombok.EqualsAndHashCode; import lombok.NoArgsConstructor; -@AllArgsConstructor +@AllArgsConstructor(access = AccessLevel.PRIVATE) @NoArgsConstructor -@Data @Entity @Builder -@EqualsAndHashCode(of = "id") @Table(name = "post") public class Post { + @Id @GeneratedValue(strategy = GenerationType.IDENTITY) private Long id; private Long user_id; private String username; diff --git a/src/main/java/com/java/dojo/recipes/entities/Recipe.java b/src/main/java/com/java/dojo/recipes/entities/Recipe.java index 2109541..806b62e 100644 --- a/src/main/java/com/java/dojo/recipes/entities/Recipe.java +++ b/src/main/java/com/java/dojo/recipes/entities/Recipe.java @@ -5,6 +5,7 @@ import javax.persistence.Entity; +import lombok.AccessLevel; import lombok.AllArgsConstructor; import lombok.Builder; import lombok.Getter; @@ -13,7 +14,7 @@ @Entity @Getter @Setter -@AllArgsConstructor +@AllArgsConstructor(access = AccessLevel.PRIVATE) @Builder public class Recipe { diff --git a/src/main/java/com/java/dojo/recipes/entities/User.java b/src/main/java/com/java/dojo/recipes/entities/User.java index 82661b1..8a71123 100644 --- a/src/main/java/com/java/dojo/recipes/entities/User.java +++ b/src/main/java/com/java/dojo/recipes/entities/User.java @@ -1,23 +1,24 @@ package com.java.dojo.recipes.entities; import javax.persistence.Entity; +import javax.persistence.GeneratedValue; +import javax.persistence.GenerationType; +import javax.persistence.Id; import javax.persistence.Table; +import lombok.AccessLevel; import lombok.AllArgsConstructor; import lombok.Builder; -import lombok.Data; -import lombok.EqualsAndHashCode; import lombok.NoArgsConstructor; -@AllArgsConstructor +@AllArgsConstructor(access = AccessLevel.PRIVATE) @NoArgsConstructor -@Data @Entity @Builder -@EqualsAndHashCode(of = "id") @Table(name = "user") public class User { + @Id @GeneratedValue(strategy = GenerationType.IDENTITY) private Long id; private String name; private String surname; From c2c4eeefb0b52eb1658225427d2a7286a1fc9354 Mon Sep 17 00:00:00 2001 From: Gabrielle Lima Date: Wed, 17 Aug 2022 15:32:04 -0300 Subject: [PATCH 4/4] Classes arrumadas --- src/main/java/com/java/dojo/recipes/entities/Recipe.java | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/src/main/java/com/java/dojo/recipes/entities/Recipe.java b/src/main/java/com/java/dojo/recipes/entities/Recipe.java index 806b62e..dc0be20 100644 --- a/src/main/java/com/java/dojo/recipes/entities/Recipe.java +++ b/src/main/java/com/java/dojo/recipes/entities/Recipe.java @@ -4,6 +4,9 @@ import java.util.List; import javax.persistence.Entity; +import javax.persistence.GeneratedValue; +import javax.persistence.GenerationType; +import javax.persistence.Id; import lombok.AccessLevel; import lombok.AllArgsConstructor; @@ -18,6 +21,8 @@ @Builder public class Recipe { + @Id @GeneratedValue(strategy = GenerationType.IDENTITY) + private Long id; private List ingredients = new ArrayList<>(); private List preparingMode = new ArrayList<>();