diff --git a/pom.xml b/pom.xml index 0caf0c4..393ba2a 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 @@ -54,6 +55,19 @@ spring-boot-starter-test test + + org.springframework.boot + spring-boot-starter-data-jpa + + + org.springframework.boot + spring-boot-devtools + + + com.h2database + h2 + runtime + 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..0698e64 --- /dev/null +++ b/src/main/java/com/java/dojo/recipes/entities/Comment.java @@ -0,0 +1,27 @@ +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.NoArgsConstructor; + +@AllArgsConstructor(access = AccessLevel.PRIVATE) +@NoArgsConstructor +@Entity +@Builder +@Table(name = "comment") +public class Comment { + @Id @GeneratedValue(strategy = GenerationType.IDENTITY) + 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..0355293 --- /dev/null +++ b/src/main/java/com/java/dojo/recipes/entities/Post.java @@ -0,0 +1,30 @@ +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.NoArgsConstructor; + +@AllArgsConstructor(access = AccessLevel.PRIVATE) +@NoArgsConstructor +@Entity +@Builder +@Table(name = "post") +public class Post { + + @Id @GeneratedValue(strategy = GenerationType.IDENTITY) + 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..dc0be20 --- /dev/null +++ b/src/main/java/com/java/dojo/recipes/entities/Recipe.java @@ -0,0 +1,30 @@ +package com.java.dojo.recipes.entities; + +import java.util.ArrayList; +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; +import lombok.Builder; +import lombok.Getter; +import lombok.Setter; + +@Entity +@Getter +@Setter +@AllArgsConstructor(access = AccessLevel.PRIVATE) +@Builder +public class Recipe { + + @Id @GeneratedValue(strategy = GenerationType.IDENTITY) + private Long id; + 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..8a71123 --- /dev/null +++ b/src/main/java/com/java/dojo/recipes/entities/User.java @@ -0,0 +1,27 @@ +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.NoArgsConstructor; + +@AllArgsConstructor(access = AccessLevel.PRIVATE) +@NoArgsConstructor +@Entity +@Builder +@Table(name = "user") +public class User { + + @Id @GeneratedValue(strategy = GenerationType.IDENTITY) + 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 24c3893..abfcd40 100644 --- a/src/main/resources/application.properties +++ b/src/main/resources/application.properties @@ -1,3 +1,6 @@ +spring.profiles.active=test +spring.jpa.open-in-view=false +spring.jpa.properties.hibernate.jdbc.time_zone=UTC spring.datasource.url=jdbc:mysql://0.0.0.0:3309/db_test spring.datasource.username=root spring.datasource.password=unroot @@ -8,4 +11,4 @@ spring.jpa.hibernate.ddl-auto=update logging.level.org.springframework.security=DEBUG logging.level.org.hibernate.SQL=DEBUG -logging.level.org.hibernate.type.descriptor.sql.BasicBinder=TRACE \ No newline at end of file +logging.level.org.hibernate.type.descriptor.sql.BasicBinder=TRACE