JAVA-28946 Upgrade sql injection samples to Spring Boot 3 (#16093)

* JAVA-28946 Upgrade sql injection samples to Spring Boot 3

* JAVA-28946 Optimise imports for AccountDAO
This commit is contained in:
sam-gardner 2024-03-19 21:24:22 +00:00 committed by GitHub
parent c0bce2baac
commit 08f57d02fb
No known key found for this signature in database
GPG Key ID: B5690EEEBB952194
5 changed files with 29 additions and 19 deletions

View File

@ -10,9 +10,9 @@
<parent> <parent>
<groupId>com.baeldung</groupId> <groupId>com.baeldung</groupId>
<artifactId>parent-boot-2</artifactId> <artifactId>parent-boot-3</artifactId>
<version>0.0.1-SNAPSHOT</version> <version>0.0.1-SNAPSHOT</version>
<relativePath>../../parent-boot-2</relativePath> <relativePath>../../parent-boot-3</relativePath>
</parent> </parent>
<dependencies> <dependencies>
@ -25,6 +25,11 @@
<artifactId>derby</artifactId> <artifactId>derby</artifactId>
<scope>runtime</scope> <scope>runtime</scope>
</dependency> </dependency>
<dependency>
<groupId>org.apache.derby</groupId>
<artifactId>derbytools</artifactId>
<scope>runtime</scope>
</dependency>
<dependency> <dependency>
<groupId>org.springframework.boot</groupId> <groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-configuration-processor</artifactId> <artifactId>spring-boot-configuration-processor</artifactId>
@ -46,8 +51,9 @@
<artifactId>spring-boot-starter-data-jpa</artifactId> <artifactId>spring-boot-starter-data-jpa</artifactId>
</dependency> </dependency>
<dependency> <dependency>
<groupId>org.hibernate</groupId> <groupId>org.hibernate.orm</groupId>
<artifactId>hibernate-jpamodelgen</artifactId> <artifactId>hibernate-jpamodelgen</artifactId>
<version>${hibernate-jpamodelgen.version}</version>
</dependency> </dependency>
<dependency> <dependency>
<groupId>org.springframework.boot</groupId> <groupId>org.springframework.boot</groupId>
@ -64,4 +70,9 @@
</plugins> </plugins>
</build> </build>
<properties>
<maven.compiler.release>17</maven.compiler.release>
<hibernate-jpamodelgen.version>6.4.4.Final</hibernate-jpamodelgen.version>
</properties>
</project> </project>

View File

@ -5,11 +5,11 @@ package com.baeldung.examples.security.sql;
import java.math.BigDecimal; import java.math.BigDecimal;
import javax.persistence.Entity; import jakarta.persistence.Entity;
import javax.persistence.GeneratedValue; import jakarta.persistence.GeneratedValue;
import javax.persistence.GenerationType; import jakarta.persistence.GenerationType;
import javax.persistence.Id; import jakarta.persistence.Id;
import javax.persistence.Table; import jakarta.persistence.Table;
import lombok.Data; import lombok.Data;

View File

@ -9,7 +9,6 @@ import java.sql.ResultSet;
import java.sql.SQLException; import java.sql.SQLException;
import java.util.AbstractMap; import java.util.AbstractMap;
import java.util.ArrayList; import java.util.ArrayList;
import java.util.Collections;
import java.util.HashSet; import java.util.HashSet;
import java.util.List; import java.util.List;
import java.util.Map; import java.util.Map;
@ -17,18 +16,17 @@ import java.util.Set;
import java.util.stream.Collectors; import java.util.stream.Collectors;
import java.util.stream.Stream; import java.util.stream.Stream;
import javax.persistence.EntityManager;
import javax.persistence.Query;
import javax.persistence.TypedQuery;
import javax.persistence.criteria.CriteriaBuilder;
import javax.persistence.criteria.CriteriaQuery;
import javax.persistence.criteria.Order;
import javax.persistence.criteria.Root;
import javax.persistence.metamodel.SingularAttribute;
import javax.sql.DataSource; import javax.sql.DataSource;
import org.springframework.stereotype.Component; import org.springframework.stereotype.Component;
import jakarta.persistence.EntityManager;
import jakarta.persistence.TypedQuery;
import jakarta.persistence.criteria.CriteriaBuilder;
import jakarta.persistence.criteria.CriteriaQuery;
import jakarta.persistence.criteria.Root;
import jakarta.persistence.metamodel.SingularAttribute;
/** /**
* @author Philippe * @author Philippe
* *

View File

@ -75,7 +75,7 @@ public class SqlInjectionSamplesApplicationUnitTest {
} }
@Test(expected = IllegalArgumentException.class) @Test(expected = IllegalArgumentException.class)
public void givenASafeMethod_whenInvalidOrderBy_thenThroweException() { public void givenASafeMethod_whenInvalidOrderBy_thenThrowException() {
target.safeFindAccountsByCustomerId("C1", "INVALID"); target.safeFindAccountsByCustomerId("C1", "INVALID");
} }

View File

@ -11,7 +11,8 @@ spring:
datasource: datasource:
initialization-mode: embedded initialization-mode: embedded
driver-class-name: org.apache.derby.jdbc.EmbeddedDriver
logging: logging:
level: level:
sql: DEBUG sql: DEBUG