From b26acfb3079d5c6739d8262c0c0b06340a6de196 Mon Sep 17 00:00:00 2001
From: Gustavo <140917585+Guzitos@users.noreply.github.com>
Date: Mon, 6 Apr 2026 20:30:38 -0300
Subject: [PATCH] parte de security feita com sucesso, register e login do
usuario
---
.idea/modules.xml | 2 +-
LibraryLoop/docker-compose.yml | 4 +-
LibraryLoop/pom.xml | 37 +++--
.../Repository/userRepository.java | 4 +-
.../controller/AuthController.java | 60 +++++++++
.../controller/BookController.java | 30 +----
.../LibraryLoop/dto/book/BookSearchDTO.java | 4 +-
.../LibraryLoop/dto/user/LoginRequestDTO.java | 3 +
.../dto/user/RegisterRequestDTO.java | 3 +
.../LibraryLoop/dto/user/ResponseDTO.java | 3 +
.../com/example/LibraryLoop/entity/User.java | 15 ++-
.../{ => security}/config/AppConfig.java | 2 +-
.../{ => security}/config/CacheConfig.java | 2 +-
.../config/CustomUserDetailsService.java | 22 +++
.../security/config/SecurityConfig.java | 48 +++++++
.../security/config/SecurityFilter.java | 48 +++++++
.../security/config/TokenService.java | 52 ++++++++
.../LibraryLoop/service/BookService.java | 126 ++----------------
.../src/main/resources/application.properties | 12 +-
19 files changed, 308 insertions(+), 169 deletions(-)
create mode 100644 LibraryLoop/src/main/java/com/example/LibraryLoop/controller/AuthController.java
create mode 100644 LibraryLoop/src/main/java/com/example/LibraryLoop/dto/user/LoginRequestDTO.java
create mode 100644 LibraryLoop/src/main/java/com/example/LibraryLoop/dto/user/RegisterRequestDTO.java
create mode 100644 LibraryLoop/src/main/java/com/example/LibraryLoop/dto/user/ResponseDTO.java
rename LibraryLoop/src/main/java/com/example/LibraryLoop/{ => security}/config/AppConfig.java (93%)
rename LibraryLoop/src/main/java/com/example/LibraryLoop/{ => security}/config/CacheConfig.java (95%)
create mode 100644 LibraryLoop/src/main/java/com/example/LibraryLoop/security/config/CustomUserDetailsService.java
create mode 100644 LibraryLoop/src/main/java/com/example/LibraryLoop/security/config/SecurityConfig.java
create mode 100644 LibraryLoop/src/main/java/com/example/LibraryLoop/security/config/SecurityFilter.java
create mode 100644 LibraryLoop/src/main/java/com/example/LibraryLoop/security/config/TokenService.java
diff --git a/.idea/modules.xml b/.idea/modules.xml
index a4c960d..47971e9 100644
--- a/.idea/modules.xml
+++ b/.idea/modules.xml
@@ -2,7 +2,7 @@
-
+
diff --git a/LibraryLoop/docker-compose.yml b/LibraryLoop/docker-compose.yml
index f9707ce..541e767 100644
--- a/LibraryLoop/docker-compose.yml
+++ b/LibraryLoop/docker-compose.yml
@@ -1,5 +1,4 @@
services:
-
mysql:
image: mysql:8.0
container_name: libraryloop-mysql
@@ -26,9 +25,10 @@ services:
ports:
- "8080:8080"
environment:
- SPRING_DATASOURCE_URL: jdbc:mysql://mysql:3306/libraryloop?useSSL=false&allowPublicKeyRetrieval=true
+ SPRING_DATASOURCE_URL: jdbc:mysql://mysql:3306/libraryloop?useSSL=false&allowPublicKeyRetrieval=true&serverTimezone=America/Sao_Paulo
SPRING_DATASOURCE_USERNAME: libraryuser
SPRING_DATASOURCE_PASSWORD: librarypass
+ JWT_SECRET: iaowhfdoawfhoqui32gho1ubg24ou1ivb24oi
depends_on:
mysql:
condition: service_healthy
diff --git a/LibraryLoop/pom.xml b/LibraryLoop/pom.xml
index a573791..a9531f3 100644
--- a/LibraryLoop/pom.xml
+++ b/LibraryLoop/pom.xml
@@ -26,12 +26,25 @@
+
org.apache.httpcomponents.client5
httpclient5
-<<<<<<< HEAD
+
+
+ org.springframework.boot
+ spring-boot-starter-security
+
+
+
+
+ com.auth0
+ java-jwt
+ 4.4.0
+
+
org.springframework.boot
@@ -43,13 +56,6 @@
com.github.ben-manes.caffeine
caffeine
-=======
-
- org.springframework.boot
- spring-boot-starter-cache
-
->>>>>>> origin/main
-
@@ -63,7 +69,7 @@
spring-boot-starter-validation
-
+
org.projectlombok
lombok
@@ -71,13 +77,13 @@
true
-
+
org.springframework.boot
spring-boot-starter-data-jpa
- true
+
com.mysql
mysql-connector-j
@@ -91,6 +97,13 @@
test
+
+
+ org.springframework.security
+ spring-security-test
+ test
+
+
@@ -122,4 +135,4 @@
-
+
\ No newline at end of file
diff --git a/LibraryLoop/src/main/java/com/example/LibraryLoop/Repository/userRepository.java b/LibraryLoop/src/main/java/com/example/LibraryLoop/Repository/userRepository.java
index 41e8fc0..06e3c58 100644
--- a/LibraryLoop/src/main/java/com/example/LibraryLoop/Repository/userRepository.java
+++ b/LibraryLoop/src/main/java/com/example/LibraryLoop/Repository/userRepository.java
@@ -7,5 +7,7 @@
public interface userRepository extends JpaRepository {
- Optional findByUsername(String username);
+ Optional findByEmail(String email);
+ Optional