diff --git a/persistence-modules/pom.xml b/persistence-modules/pom.xml index 9606da4594..d7ff51b487 100644 --- a/persistence-modules/pom.xml +++ b/persistence-modules/pom.xml @@ -98,7 +98,8 @@ spring-data-mongodb-reactive spring-data-neo4j spring-data-redis - spring-data-rest + + spring-data-rest-2 spring-data-rest-querydsl spring-data-solr diff --git a/persistence-modules/spring-data-rest/pom.xml b/persistence-modules/spring-data-rest/pom.xml index f5601cb7ce..fa2cd033f5 100644 --- a/persistence-modules/spring-data-rest/pom.xml +++ b/persistence-modules/spring-data-rest/pom.xml @@ -11,9 +11,9 @@ com.baeldung - parent-boot-2 + parent-boot-3 0.0.1-SNAPSHOT - ../../parent-boot-2 + ../../parent-boot-3 @@ -42,6 +42,17 @@ spring-boot-starter-test test + + org.hibernate.orm + hibernate-community-dialects + ${hibernate-community-dialects.version} + + + io.rest-assured + rest-assured + 3.3.0 + test + com.h2database h2 @@ -64,23 +75,6 @@ ${project.artifactId} - - com.mysema.maven - maven-apt-plugin - ${maven.version} - - - generate-sources - - process - - - target/generated-sources - com.querydsl.apt.jpa.JPAAnnotationProcessor - - - - org.springframework.boot spring-boot-maven-plugin @@ -91,6 +85,7 @@ com.baeldung.books.SpringDataRestApplication 1.0 + 6.1.7.Final \ No newline at end of file diff --git a/persistence-modules/spring-data-rest/src/main/java/com/baeldung/books/dialect/SQLiteDialect.java b/persistence-modules/spring-data-rest/src/main/java/com/baeldung/books/dialect/SQLiteDialect.java deleted file mode 100644 index 6e840eec43..0000000000 --- a/persistence-modules/spring-data-rest/src/main/java/com/baeldung/books/dialect/SQLiteDialect.java +++ /dev/null @@ -1,78 +0,0 @@ -package com.baeldung.books.dialect; - -import org.hibernate.dialect.Dialect; -import org.hibernate.dialect.identity.IdentityColumnSupport; - -import java.sql.Types; - -public class SQLiteDialect extends Dialect { - - public SQLiteDialect() { - registerColumnType(Types.BIT, "integer"); - registerColumnType(Types.TINYINT, "tinyint"); - registerColumnType(Types.SMALLINT, "smallint"); - registerColumnType(Types.INTEGER, "integer"); - registerColumnType(Types.BIGINT, "bigint"); - registerColumnType(Types.FLOAT, "float"); - registerColumnType(Types.REAL, "real"); - registerColumnType(Types.DOUBLE, "double"); - registerColumnType(Types.NUMERIC, "numeric"); - registerColumnType(Types.DECIMAL, "decimal"); - registerColumnType(Types.CHAR, "char"); - registerColumnType(Types.VARCHAR, "varchar"); - registerColumnType(Types.LONGVARCHAR, "longvarchar"); - registerColumnType(Types.DATE, "date"); - registerColumnType(Types.TIME, "time"); - registerColumnType(Types.TIMESTAMP, "timestamp"); - registerColumnType(Types.BINARY, "blob"); - registerColumnType(Types.VARBINARY, "blob"); - registerColumnType(Types.LONGVARBINARY, "blob"); - registerColumnType(Types.BLOB, "blob"); - registerColumnType(Types.CLOB, "clob"); - registerColumnType(Types.BOOLEAN, "integer"); - } - - public IdentityColumnSupport getIdentityColumnSupport() { - return new SQLiteIdentityColumnSupport(); - } - - public boolean hasAlterTable() { - return false; - } - - public boolean dropConstraints() { - return false; - } - - public String getDropForeignKeyString() { - return ""; - } - - public String getAddForeignKeyConstraintString(String constraintName, String[] foreignKey, String referencedTable, String[] primaryKey, boolean referencesPrimaryKey) { - return ""; - } - - public String getAddPrimaryKeyConstraintString(String constraintName) { - return ""; - } - - public String getForUpdateString() { - return ""; - } - - public String getAddColumnString() { - return "add column"; - } - - public boolean supportsOuterJoinForUpdate() { - return false; - } - - public boolean supportsIfExistsBeforeTableName() { - return true; - } - - public boolean supportsCascadeDelete() { - return false; - } -} diff --git a/persistence-modules/spring-data-rest/src/main/java/com/baeldung/books/dialect/SQLiteIdentityColumnSupport.java b/persistence-modules/spring-data-rest/src/main/java/com/baeldung/books/dialect/SQLiteIdentityColumnSupport.java deleted file mode 100644 index 682d82c6f1..0000000000 --- a/persistence-modules/spring-data-rest/src/main/java/com/baeldung/books/dialect/SQLiteIdentityColumnSupport.java +++ /dev/null @@ -1,22 +0,0 @@ -package com.baeldung.books.dialect; - -import org.hibernate.MappingException; -import org.hibernate.dialect.identity.IdentityColumnSupportImpl; - -public class SQLiteIdentityColumnSupport extends IdentityColumnSupportImpl { - - @Override - public boolean supportsIdentityColumns() { - return true; - } - - @Override - public String getIdentitySelectString(String table, String column, int type) throws MappingException { - return "select last_insert_rowid()"; - } - - @Override - public String getIdentityColumnString(int type) throws MappingException { - return "integer"; - } -} diff --git a/persistence-modules/spring-data-rest/src/main/java/com/baeldung/books/models/Address.java b/persistence-modules/spring-data-rest/src/main/java/com/baeldung/books/models/Address.java index 3c36db0f3c..2627c21615 100644 --- a/persistence-modules/spring-data-rest/src/main/java/com/baeldung/books/models/Address.java +++ b/persistence-modules/spring-data-rest/src/main/java/com/baeldung/books/models/Address.java @@ -1,11 +1,11 @@ package com.baeldung.books.models; -import javax.persistence.Column; -import javax.persistence.Entity; -import javax.persistence.GeneratedValue; -import javax.persistence.GenerationType; -import javax.persistence.Id; -import javax.persistence.OneToOne; +import jakarta.persistence.Column; +import jakarta.persistence.Entity; +import jakarta.persistence.GeneratedValue; +import jakarta.persistence.GenerationType; +import jakarta.persistence.Id; +import jakarta.persistence.OneToOne; @Entity public class Address { diff --git a/persistence-modules/spring-data-rest/src/main/java/com/baeldung/books/models/Author.java b/persistence-modules/spring-data-rest/src/main/java/com/baeldung/books/models/Author.java index aec2e62ebf..385113d800 100644 --- a/persistence-modules/spring-data-rest/src/main/java/com/baeldung/books/models/Author.java +++ b/persistence-modules/spring-data-rest/src/main/java/com/baeldung/books/models/Author.java @@ -2,15 +2,15 @@ package com.baeldung.books.models; import java.util.List; -import javax.persistence.CascadeType; -import javax.persistence.Column; -import javax.persistence.Entity; -import javax.persistence.GeneratedValue; -import javax.persistence.GenerationType; -import javax.persistence.Id; -import javax.persistence.JoinColumn; -import javax.persistence.JoinTable; -import javax.persistence.ManyToMany; +import jakarta.persistence.CascadeType; +import jakarta.persistence.Column; +import jakarta.persistence.Entity; +import jakarta.persistence.GeneratedValue; +import jakarta.persistence.GenerationType; +import jakarta.persistence.Id; +import jakarta.persistence.JoinColumn; +import jakarta.persistence.JoinTable; +import jakarta.persistence.ManyToMany; @Entity public class Author { diff --git a/persistence-modules/spring-data-rest/src/main/java/com/baeldung/books/models/Book.java b/persistence-modules/spring-data-rest/src/main/java/com/baeldung/books/models/Book.java index 7451b04b3b..ea3fb325c1 100644 --- a/persistence-modules/spring-data-rest/src/main/java/com/baeldung/books/models/Book.java +++ b/persistence-modules/spring-data-rest/src/main/java/com/baeldung/books/models/Book.java @@ -2,15 +2,15 @@ package com.baeldung.books.models; import java.util.List; -import javax.persistence.Column; -import javax.persistence.Entity; -import javax.persistence.FetchType; -import javax.persistence.GeneratedValue; -import javax.persistence.GenerationType; -import javax.persistence.Id; -import javax.persistence.JoinColumn; -import javax.persistence.ManyToMany; -import javax.persistence.ManyToOne; +import jakarta.persistence.Column; +import jakarta.persistence.Entity; +import jakarta.persistence.FetchType; +import jakarta.persistence.GeneratedValue; +import jakarta.persistence.GenerationType; +import jakarta.persistence.Id; +import jakarta.persistence.JoinColumn; +import jakarta.persistence.ManyToMany; +import jakarta.persistence.ManyToOne; @Entity public class Book { diff --git a/persistence-modules/spring-data-rest/src/main/java/com/baeldung/books/models/Library.java b/persistence-modules/spring-data-rest/src/main/java/com/baeldung/books/models/Library.java index 5f95169a9b..28a54dbd33 100644 --- a/persistence-modules/spring-data-rest/src/main/java/com/baeldung/books/models/Library.java +++ b/persistence-modules/spring-data-rest/src/main/java/com/baeldung/books/models/Library.java @@ -2,14 +2,14 @@ package com.baeldung.books.models; import java.util.List; -import javax.persistence.Column; -import javax.persistence.Entity; -import javax.persistence.GeneratedValue; -import javax.persistence.GenerationType; -import javax.persistence.Id; -import javax.persistence.JoinColumn; -import javax.persistence.OneToMany; -import javax.persistence.OneToOne; +import jakarta.persistence.Column; +import jakarta.persistence.Entity; +import jakarta.persistence.GeneratedValue; +import jakarta.persistence.GenerationType; +import jakarta.persistence.Id; +import jakarta.persistence.JoinColumn; +import jakarta.persistence.OneToMany; +import jakarta.persistence.OneToOne; import org.springframework.data.rest.core.annotation.RestResource; diff --git a/persistence-modules/spring-data-rest/src/main/java/com/baeldung/books/models/Subject.java b/persistence-modules/spring-data-rest/src/main/java/com/baeldung/books/models/Subject.java index 11a4425fdd..28d16f5054 100644 --- a/persistence-modules/spring-data-rest/src/main/java/com/baeldung/books/models/Subject.java +++ b/persistence-modules/spring-data-rest/src/main/java/com/baeldung/books/models/Subject.java @@ -1,10 +1,10 @@ package com.baeldung.books.models; -import javax.persistence.Column; -import javax.persistence.Entity; -import javax.persistence.GeneratedValue; -import javax.persistence.GenerationType; -import javax.persistence.Id; +import jakarta.persistence.Column; +import jakarta.persistence.Entity; +import jakarta.persistence.GeneratedValue; +import jakarta.persistence.GenerationType; +import jakarta.persistence.Id; @Entity public class Subject { diff --git a/persistence-modules/spring-data-rest/src/main/resources/persistence-sqlite.properties b/persistence-modules/spring-data-rest/src/main/resources/persistence-sqlite.properties index b6b5f4e4d6..e570322a82 100644 --- a/persistence-modules/spring-data-rest/src/main/resources/persistence-sqlite.properties +++ b/persistence-modules/spring-data-rest/src/main/resources/persistence-sqlite.properties @@ -2,6 +2,6 @@ driverClassName=org.sqlite.JDBC url=jdbc:sqlite:memory:myDb?cache=shared username=sa password=sa -hibernate.dialect=com.baeldung.dialect.SQLiteDialect +spring.jpa.database-platform=org.hibernate.community.dialect.SQLiteDialect hibernate.hbm2ddl.auto=create-drop hibernate.show_sql=true diff --git a/pom.xml b/pom.xml index 6ef6abd805..b349c49f9e 100644 --- a/pom.xml +++ b/pom.xml @@ -904,6 +904,7 @@ spring-swagger-codegen/custom-validations-opeanpi-codegen testing-modules/testing-assertions persistence-modules/fauna + persistence-modules/spring-data-rest rule-engines-modules @@ -1162,6 +1163,7 @@ spring-swagger-codegen/custom-validations-opeanpi-codegen testing-modules/testing-assertions persistence-modules/fauna + persistence-modules/spring-data-rest rule-engines-modules