MCPcopy Index your code
hub / github.com/ali-bouali/spring-boot-3-jwt-security

github.com/ali-bouali/spring-boot-3-jwt-security @main

Chat with this repo
repository ↗ · DeepWiki ↗ · + Follow
88 symbols 231 edges 32 files 0 documented · 0%
What it actually does AI analysis from the code graph — generated when you open this
loading…
README

Spring Boot 3.0 Security with JWT Implementation

This project demonstrates the implementation of security using Spring Boot 3.0 and JSON Web Tokens (JWT). It includes the following features:

Features

  • User registration and login with JWT authentication
  • Password encryption using BCrypt
  • Role-based authorization with Spring Security
  • Customized access denied handling
  • Logout mechanism
  • Refresh token

Technologies

  • Spring Boot 3.0
  • Spring Security
  • JSON Web Tokens (JWT)
  • BCrypt
  • Maven

Getting Started

To get started with this project, you will need to have the following installed on your local machine:

  • JDK 17+
  • Maven 3+

To build and run the project, follow these steps:

  • Clone the repository: git clone https://github.com/ali-bouali/spring-boot-3-jwt-security.git
  • Navigate to the project directory: cd spring-boot-security-jwt
  • Add database "jwt_security" to postgres
  • Build the project: mvn clean install
  • Run the project: mvn spring-boot:run

-> The application will be available at http://localhost:8080.

Extension points exported contracts — how you extend this code

BookRepository (Interface)
(no doc)
src/main/java/com/alibou/security/book/BookRepository.java
UserRepository (Interface)
(no doc)
src/main/java/com/alibou/security/user/UserRepository.java
TokenRepository (Interface)
(no doc)
src/main/java/com/alibou/security/token/TokenRepository.java

Core symbols most depended-on inside this repo

save
called by 4
src/main/java/com/alibou/security/book/BookService.java
saveUserToken
called by 3
src/main/java/com/alibou/security/auth/AuthenticationService.java
getPassword
called by 3
src/main/java/com/alibou/security/user/User.java
findByEmail
called by 3
src/main/java/com/alibou/security/user/UserRepository.java
extractUsername
called by 3
src/main/java/com/alibou/security/config/JwtService.java
generateToken
called by 3
src/main/java/com/alibou/security/config/JwtService.java
register
called by 2
src/main/java/com/alibou/security/auth/AuthenticationService.java
revokeAllUserTokens
called by 2
src/main/java/com/alibou/security/auth/AuthenticationService.java

Shape

Method 56
Class 26
Enum 3
Interface 3

Languages

Java100%

Modules by API surface

src/main/java/com/alibou/security/config/JwtService.java11 symbols
src/main/java/com/alibou/security/user/User.java8 symbols
src/main/java/com/alibou/security/config/ApplicationConfig.java6 symbols
src/main/java/com/alibou/security/auth/AuthenticationService.java6 symbols
src/main/java/com/alibou/security/demo/ManagementController.java5 symbols
src/main/java/com/alibou/security/demo/AdminController.java5 symbols
src/main/java/com/alibou/security/auth/AuthenticationController.java4 symbols
src/main/java/com/alibou/security/token/TokenRepository.java3 symbols
src/main/java/com/alibou/security/book/BookService.java3 symbols
src/main/java/com/alibou/security/book/BookController.java3 symbols
src/main/java/com/alibou/security/SecurityApplication.java3 symbols
src/test/java/com/alibou/security/SecurityApplicationTests.java2 symbols

Datastores touched

jwt_securityDatabase · 1 repos

For agents

$ claude mcp add spring-boot-3-jwt-security \
  -- python -m otcore.mcp_server <graph>

⬇ download graph artifact