diff --git a/pom.xml b/pom.xml index b39061d..7eec325 100644 --- a/pom.xml +++ b/pom.xml @@ -1,77 +1,79 @@ - 4.0.0 - - org.springframework.boot - spring-boot-starter-parent - 2.7.3 - - - com.bezkoder - spring-boot-security-jwt - 0.0.1-SNAPSHOT - spring-boot-security-jwt - Demo project for Spring Boot Security - JWT + xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" + xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 https://maven.apache.org/xsd/maven-4.0.0.xsd"> + 4.0.0 + + org.springframework.boot + spring-boot-starter-parent + 2.7.3 + + + com.bezkoder + spring-boot-security-jwt + 0.0.1-SNAPSHOT + spring-boot-security-jwt + Demo project for Spring Boot Security - JWT - - 1.8 - + + 1.8 + - - - org.springframework.boot - spring-boot-starter-data-jpa - + + + org.springframework.boot + spring-boot-starter-data-jpa + - - org.springframework.boot - spring-boot-starter-security - - - - org.springframework.boot - spring-boot-starter-validation - + + org.springframework.boot + spring-boot-starter-security + - - org.springframework.boot - spring-boot-starter-web - + + org.springframework.boot + spring-boot-starter-validation + - - mysql - mysql-connector-java - runtime - + + org.springframework.boot + spring-boot-starter-web + - - io.jsonwebtoken - jjwt - 0.9.1 - + + + com.h2database + h2 + runtime + 2.1.214 + - - org.springframework.boot - spring-boot-starter-test - test - + + io.jsonwebtoken + jjwt + 0.9.1 + - - org.springframework.security - spring-security-test - test - - + + org.springframework.boot + spring-boot-starter-test + test + - - - - org.springframework.boot - spring-boot-maven-plugin - - - + + org.springframework.security + spring-security-test + test + + + + + + + org.springframework.boot + spring-boot-maven-plugin + + + diff --git a/src/main/java/com/bezkoder/springjwt/SpringBootSecurityJwtApplication.java b/src/main/java/com/ossez/spring/security/SpringBootSecurityJwtApplication.java similarity index 90% rename from src/main/java/com/bezkoder/springjwt/SpringBootSecurityJwtApplication.java rename to src/main/java/com/ossez/spring/security/SpringBootSecurityJwtApplication.java index c723518..3fd8a59 100644 --- a/src/main/java/com/bezkoder/springjwt/SpringBootSecurityJwtApplication.java +++ b/src/main/java/com/ossez/spring/security/SpringBootSecurityJwtApplication.java @@ -1,4 +1,4 @@ -package com.bezkoder.springjwt; +package com.ossez.spring.security; import org.springframework.boot.SpringApplication; import org.springframework.boot.autoconfigure.SpringBootApplication; diff --git a/src/main/java/com/bezkoder/springjwt/controllers/AuthController.java b/src/main/java/com/ossez/spring/security/controllers/AuthController.java similarity index 82% rename from src/main/java/com/bezkoder/springjwt/controllers/AuthController.java rename to src/main/java/com/ossez/spring/security/controllers/AuthController.java index 4287ba1..9241f9b 100644 --- a/src/main/java/com/bezkoder/springjwt/controllers/AuthController.java +++ b/src/main/java/com/ossez/spring/security/controllers/AuthController.java @@ -1,4 +1,4 @@ -package com.bezkoder.springjwt.controllers; +package com.ossez.spring.security.controllers; import java.util.HashSet; import java.util.List; @@ -7,6 +7,14 @@ import java.util.stream.Collectors; import javax.validation.Valid; +import com.ossez.spring.security.models.ERole; +import com.ossez.spring.security.models.Role; +import com.ossez.spring.security.payload.request.LoginRequest; +import com.ossez.spring.security.payload.request.SignupRequest; +import com.ossez.spring.security.payload.response.JwtResponse; +import com.ossez.spring.security.payload.response.MessageResponse; +import com.ossez.spring.security.security.jwt.JwtUtils; +import com.ossez.spring.security.security.services.UserDetailsImpl; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.http.ResponseEntity; import org.springframework.security.authentication.AuthenticationManager; @@ -20,21 +28,13 @@ import org.springframework.web.bind.annotation.RequestBody; import org.springframework.web.bind.annotation.RequestMapping; import org.springframework.web.bind.annotation.RestController; -import com.bezkoder.springjwt.models.ERole; -import com.bezkoder.springjwt.models.Role; -import com.bezkoder.springjwt.models.User; -import com.bezkoder.springjwt.payload.request.LoginRequest; -import com.bezkoder.springjwt.payload.request.SignupRequest; -import com.bezkoder.springjwt.payload.response.JwtResponse; -import com.bezkoder.springjwt.payload.response.MessageResponse; -import com.bezkoder.springjwt.repository.RoleRepository; -import com.bezkoder.springjwt.repository.UserRepository; -import com.bezkoder.springjwt.security.jwt.JwtUtils; -import com.bezkoder.springjwt.security.services.UserDetailsImpl; +import com.ossez.spring.security.models.User; +import com.ossez.spring.security.repository.RoleRepository; +import com.ossez.spring.security.repository.UserRepository; @CrossOrigin(origins = "*", maxAge = 3600) @RestController -@RequestMapping("/api/auth") +@RequestMapping("/custom") public class AuthController { @Autowired AuthenticationManager authenticationManager; @@ -60,19 +60,19 @@ public class AuthController { SecurityContextHolder.getContext().setAuthentication(authentication); String jwt = jwtUtils.generateJwtToken(authentication); - UserDetailsImpl userDetails = (UserDetailsImpl) authentication.getPrincipal(); + UserDetailsImpl userDetails = (UserDetailsImpl) authentication.getPrincipal(); List roles = userDetails.getAuthorities().stream() .map(item -> item.getAuthority()) .collect(Collectors.toList()); - return ResponseEntity.ok(new JwtResponse(jwt, + return ResponseEntity.ok(new JwtResponse(jwt, userDetails.getId(), userDetails.getUsername(), userDetails.getEmail(), roles)); } - @PostMapping("/signup") + @PostMapping("/register") public ResponseEntity registerUser(@Valid @RequestBody SignupRequest signUpRequest) { if (userRepository.existsByUsername(signUpRequest.getUsername())) { return ResponseEntity diff --git a/src/main/java/com/bezkoder/springjwt/controllers/TestController.java b/src/main/java/com/ossez/spring/security/controllers/TestController.java similarity index 95% rename from src/main/java/com/bezkoder/springjwt/controllers/TestController.java rename to src/main/java/com/ossez/spring/security/controllers/TestController.java index e03b5cb..dd74ee5 100644 --- a/src/main/java/com/bezkoder/springjwt/controllers/TestController.java +++ b/src/main/java/com/ossez/spring/security/controllers/TestController.java @@ -1,4 +1,4 @@ -package com.bezkoder.springjwt.controllers; +package com.ossez.spring.security.controllers; import org.springframework.security.access.prepost.PreAuthorize; import org.springframework.web.bind.annotation.CrossOrigin; diff --git a/src/main/java/com/bezkoder/springjwt/models/ERole.java b/src/main/java/com/ossez/spring/security/models/ERole.java similarity index 61% rename from src/main/java/com/bezkoder/springjwt/models/ERole.java rename to src/main/java/com/ossez/spring/security/models/ERole.java index a113c68..6585c12 100644 --- a/src/main/java/com/bezkoder/springjwt/models/ERole.java +++ b/src/main/java/com/ossez/spring/security/models/ERole.java @@ -1,4 +1,4 @@ -package com.bezkoder.springjwt.models; +package com.ossez.spring.security.models; public enum ERole { ROLE_USER, diff --git a/src/main/java/com/bezkoder/springjwt/models/Role.java b/src/main/java/com/ossez/spring/security/models/Role.java similarity index 92% rename from src/main/java/com/bezkoder/springjwt/models/Role.java rename to src/main/java/com/ossez/spring/security/models/Role.java index abf816e..556cefa 100644 --- a/src/main/java/com/bezkoder/springjwt/models/Role.java +++ b/src/main/java/com/ossez/spring/security/models/Role.java @@ -1,4 +1,4 @@ -package com.bezkoder.springjwt.models; +package com.ossez.spring.security.models; import javax.persistence.*; diff --git a/src/main/java/com/bezkoder/springjwt/models/User.java b/src/main/java/com/ossez/spring/security/models/User.java similarity index 97% rename from src/main/java/com/bezkoder/springjwt/models/User.java rename to src/main/java/com/ossez/spring/security/models/User.java index 9f03ab1..1f40be6 100644 --- a/src/main/java/com/bezkoder/springjwt/models/User.java +++ b/src/main/java/com/ossez/spring/security/models/User.java @@ -1,4 +1,4 @@ -package com.bezkoder.springjwt.models; +package com.ossez.spring.security.models; import java.util.HashSet; import java.util.Set; diff --git a/src/main/java/com/bezkoder/springjwt/payload/request/LoginRequest.java b/src/main/java/com/ossez/spring/security/payload/request/LoginRequest.java similarity index 89% rename from src/main/java/com/bezkoder/springjwt/payload/request/LoginRequest.java rename to src/main/java/com/ossez/spring/security/payload/request/LoginRequest.java index 8b6bedf..1c7d14b 100644 --- a/src/main/java/com/bezkoder/springjwt/payload/request/LoginRequest.java +++ b/src/main/java/com/ossez/spring/security/payload/request/LoginRequest.java @@ -1,4 +1,4 @@ -package com.bezkoder.springjwt.payload.request; +package com.ossez.spring.security.payload.request; import javax.validation.constraints.NotBlank; diff --git a/src/main/java/com/bezkoder/springjwt/payload/request/SignupRequest.java b/src/main/java/com/ossez/spring/security/payload/request/SignupRequest.java similarity index 94% rename from src/main/java/com/bezkoder/springjwt/payload/request/SignupRequest.java rename to src/main/java/com/ossez/spring/security/payload/request/SignupRequest.java index 899f199..b3b3613 100644 --- a/src/main/java/com/bezkoder/springjwt/payload/request/SignupRequest.java +++ b/src/main/java/com/ossez/spring/security/payload/request/SignupRequest.java @@ -1,4 +1,4 @@ -package com.bezkoder.springjwt.payload.request; +package com.ossez.spring.security.payload.request; import java.util.Set; diff --git a/src/main/java/com/bezkoder/springjwt/payload/response/JwtResponse.java b/src/main/java/com/ossez/spring/security/payload/response/JwtResponse.java similarity index 95% rename from src/main/java/com/bezkoder/springjwt/payload/response/JwtResponse.java rename to src/main/java/com/ossez/spring/security/payload/response/JwtResponse.java index ac387f0..07abfb5 100644 --- a/src/main/java/com/bezkoder/springjwt/payload/response/JwtResponse.java +++ b/src/main/java/com/ossez/spring/security/payload/response/JwtResponse.java @@ -1,4 +1,4 @@ -package com.bezkoder.springjwt.payload.response; +package com.ossez.spring.security.payload.response; import java.util.List; diff --git a/src/main/java/com/bezkoder/springjwt/payload/response/MessageResponse.java b/src/main/java/com/ossez/spring/security/payload/response/MessageResponse.java similarity index 83% rename from src/main/java/com/bezkoder/springjwt/payload/response/MessageResponse.java rename to src/main/java/com/ossez/spring/security/payload/response/MessageResponse.java index 068e179..21cc276 100644 --- a/src/main/java/com/bezkoder/springjwt/payload/response/MessageResponse.java +++ b/src/main/java/com/ossez/spring/security/payload/response/MessageResponse.java @@ -1,4 +1,4 @@ -package com.bezkoder.springjwt.payload.response; +package com.ossez.spring.security.payload.response; public class MessageResponse { private String message; diff --git a/src/main/java/com/bezkoder/springjwt/repository/RoleRepository.java b/src/main/java/com/ossez/spring/security/repository/RoleRepository.java similarity index 65% rename from src/main/java/com/bezkoder/springjwt/repository/RoleRepository.java rename to src/main/java/com/ossez/spring/security/repository/RoleRepository.java index a1882d0..e3abb23 100644 --- a/src/main/java/com/bezkoder/springjwt/repository/RoleRepository.java +++ b/src/main/java/com/ossez/spring/security/repository/RoleRepository.java @@ -1,13 +1,12 @@ -package com.bezkoder.springjwt.repository; +package com.ossez.spring.security.repository; import java.util.Optional; +import com.ossez.spring.security.models.ERole; +import com.ossez.spring.security.models.Role; import org.springframework.data.jpa.repository.JpaRepository; import org.springframework.stereotype.Repository; -import com.bezkoder.springjwt.models.ERole; -import com.bezkoder.springjwt.models.Role; - @Repository public interface RoleRepository extends JpaRepository { Optional findByName(ERole name); diff --git a/src/main/java/com/bezkoder/springjwt/repository/UserRepository.java b/src/main/java/com/ossez/spring/security/repository/UserRepository.java similarity index 79% rename from src/main/java/com/bezkoder/springjwt/repository/UserRepository.java rename to src/main/java/com/ossez/spring/security/repository/UserRepository.java index d48a98c..ea82849 100644 --- a/src/main/java/com/bezkoder/springjwt/repository/UserRepository.java +++ b/src/main/java/com/ossez/spring/security/repository/UserRepository.java @@ -1,11 +1,11 @@ -package com.bezkoder.springjwt.repository; +package com.ossez.spring.security.repository; import java.util.Optional; import org.springframework.data.jpa.repository.JpaRepository; import org.springframework.stereotype.Repository; -import com.bezkoder.springjwt.models.User; +import com.ossez.spring.security.models.User; @Repository public interface UserRepository extends JpaRepository { diff --git a/src/main/java/com/bezkoder/springjwt/security/WebSecurityConfig.java b/src/main/java/com/ossez/spring/security/security/WebSecurityConfig.java similarity index 54% rename from src/main/java/com/bezkoder/springjwt/security/WebSecurityConfig.java rename to src/main/java/com/ossez/spring/security/security/WebSecurityConfig.java index 3114f6b..3be3322 100644 --- a/src/main/java/com/bezkoder/springjwt/security/WebSecurityConfig.java +++ b/src/main/java/com/ossez/spring/security/security/WebSecurityConfig.java @@ -1,4 +1,4 @@ -package com.bezkoder.springjwt.security; +package com.ossez.spring.security.security; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.context.annotation.Bean; @@ -17,57 +17,57 @@ import org.springframework.security.crypto.password.PasswordEncoder; import org.springframework.security.web.SecurityFilterChain; import org.springframework.security.web.authentication.UsernamePasswordAuthenticationFilter; -import com.bezkoder.springjwt.security.jwt.AuthEntryPointJwt; -import com.bezkoder.springjwt.security.jwt.AuthTokenFilter; -import com.bezkoder.springjwt.security.services.UserDetailsServiceImpl; +import com.ossez.spring.security.security.jwt.AuthEntryPointJwt; +import com.ossez.spring.security.security.jwt.AuthTokenFilter; +import com.ossez.spring.security.security.services.UserDetailsServiceImpl; @Configuration @EnableGlobalMethodSecurity( - // securedEnabled = true, - // jsr250Enabled = true, - prePostEnabled = true) + // securedEnabled = true, + // jsr250Enabled = true, + prePostEnabled = true) public class WebSecurityConfig { // extends WebSecurityConfigurerAdapter { - @Autowired - UserDetailsServiceImpl userDetailsService; + @Autowired + UserDetailsServiceImpl userDetailsService; - @Autowired - private AuthEntryPointJwt unauthorizedHandler; + @Autowired + private AuthEntryPointJwt unauthorizedHandler; - @Bean - public AuthTokenFilter authenticationJwtTokenFilter() { - return new AuthTokenFilter(); - } + @Bean + public AuthTokenFilter authenticationJwtTokenFilter() { + return new AuthTokenFilter(); + } // @Override // public void configure(AuthenticationManagerBuilder authenticationManagerBuilder) throws Exception { // authenticationManagerBuilder.userDetailsService(userDetailsService).passwordEncoder(passwordEncoder()); // } - - @Bean - public DaoAuthenticationProvider authenticationProvider() { - DaoAuthenticationProvider authProvider = new DaoAuthenticationProvider(); - - authProvider.setUserDetailsService(userDetailsService); - authProvider.setPasswordEncoder(passwordEncoder()); - - return authProvider; - } + + @Bean + public DaoAuthenticationProvider authenticationProvider() { + DaoAuthenticationProvider authProvider = new DaoAuthenticationProvider(); + + authProvider.setUserDetailsService(userDetailsService); + authProvider.setPasswordEncoder(passwordEncoder()); + + return authProvider; + } // @Bean // @Override // public AuthenticationManager authenticationManagerBean() throws Exception { // return super.authenticationManagerBean(); // } - - @Bean - public AuthenticationManager authenticationManager(AuthenticationConfiguration authConfig) throws Exception { - return authConfig.getAuthenticationManager(); - } - @Bean - public PasswordEncoder passwordEncoder() { - return new BCryptPasswordEncoder(); - } + @Bean + public AuthenticationManager authenticationManager(AuthenticationConfiguration authConfig) throws Exception { + return authConfig.getAuthenticationManager(); + } + + @Bean + public PasswordEncoder passwordEncoder() { + return new BCryptPasswordEncoder(); + } // @Override // protected void configure(HttpSecurity http) throws Exception { @@ -80,20 +80,21 @@ public class WebSecurityConfig { // extends WebSecurityConfigurerAdapter { // // http.addFilterBefore(authenticationJwtTokenFilter(), UsernamePasswordAuthenticationFilter.class); // } - - @Bean - public SecurityFilterChain filterChain(HttpSecurity http) throws Exception { - http.cors().and().csrf().disable() - .exceptionHandling().authenticationEntryPoint(unauthorizedHandler).and() - .sessionManagement().sessionCreationPolicy(SessionCreationPolicy.STATELESS).and() - .authorizeRequests().antMatchers("/api/auth/**").permitAll() - .antMatchers("/api/test/**").permitAll() - .anyRequest().authenticated(); - - http.authenticationProvider(authenticationProvider()); - http.addFilterBefore(authenticationJwtTokenFilter(), UsernamePasswordAuthenticationFilter.class); - - return http.build(); - } + @Bean + public SecurityFilterChain filterChain(HttpSecurity http) throws Exception { + http.cors().and().csrf().disable() + .exceptionHandling().authenticationEntryPoint(unauthorizedHandler).and() + .sessionManagement().sessionCreationPolicy(SessionCreationPolicy.STATELESS).and() + .authorizeRequests().antMatchers("/h2-console/**").permitAll() + .antMatchers("/api/test/**").permitAll() + .anyRequest().authenticated(); + + http.authenticationProvider(authenticationProvider()); + http.headers().frameOptions().sameOrigin(); + + http.addFilterBefore(authenticationJwtTokenFilter(), UsernamePasswordAuthenticationFilter.class); + + return http.build(); + } } diff --git a/src/main/java/com/bezkoder/springjwt/security/jwt/AuthEntryPointJwt.java b/src/main/java/com/ossez/spring/security/security/jwt/AuthEntryPointJwt.java similarity index 96% rename from src/main/java/com/bezkoder/springjwt/security/jwt/AuthEntryPointJwt.java rename to src/main/java/com/ossez/spring/security/security/jwt/AuthEntryPointJwt.java index 903f6a8..c28c506 100644 --- a/src/main/java/com/bezkoder/springjwt/security/jwt/AuthEntryPointJwt.java +++ b/src/main/java/com/ossez/spring/security/security/jwt/AuthEntryPointJwt.java @@ -1,4 +1,4 @@ -package com.bezkoder.springjwt.security.jwt; +package com.ossez.spring.security.security.jwt; import java.io.IOException; import java.util.HashMap; diff --git a/src/main/java/com/bezkoder/springjwt/security/jwt/AuthTokenFilter.java b/src/main/java/com/ossez/spring/security/security/jwt/AuthTokenFilter.java similarity index 94% rename from src/main/java/com/bezkoder/springjwt/security/jwt/AuthTokenFilter.java rename to src/main/java/com/ossez/spring/security/security/jwt/AuthTokenFilter.java index 2b3b6d3..c64d9a1 100644 --- a/src/main/java/com/bezkoder/springjwt/security/jwt/AuthTokenFilter.java +++ b/src/main/java/com/ossez/spring/security/security/jwt/AuthTokenFilter.java @@ -1,4 +1,4 @@ -package com.bezkoder.springjwt.security.jwt; +package com.ossez.spring.security.security.jwt; import java.io.IOException; @@ -7,6 +7,7 @@ import javax.servlet.ServletException; import javax.servlet.http.HttpServletRequest; import javax.servlet.http.HttpServletResponse; +import com.ossez.spring.security.security.services.UserDetailsServiceImpl; import org.slf4j.Logger; import org.slf4j.LoggerFactory; import org.springframework.beans.factory.annotation.Autowired; @@ -17,8 +18,6 @@ import org.springframework.security.web.authentication.WebAuthenticationDetailsS import org.springframework.util.StringUtils; import org.springframework.web.filter.OncePerRequestFilter; -import com.bezkoder.springjwt.security.services.UserDetailsServiceImpl; - public class AuthTokenFilter extends OncePerRequestFilter { @Autowired private JwtUtils jwtUtils; diff --git a/src/main/java/com/bezkoder/springjwt/security/jwt/JwtUtils.java b/src/main/java/com/ossez/spring/security/security/jwt/JwtUtils.java similarity index 94% rename from src/main/java/com/bezkoder/springjwt/security/jwt/JwtUtils.java rename to src/main/java/com/ossez/spring/security/security/jwt/JwtUtils.java index 00c8157..224f977 100644 --- a/src/main/java/com/bezkoder/springjwt/security/jwt/JwtUtils.java +++ b/src/main/java/com/ossez/spring/security/security/jwt/JwtUtils.java @@ -1,4 +1,4 @@ -package com.bezkoder.springjwt.security.jwt; +package com.ossez.spring.security.security.jwt; import java.util.Date; @@ -8,7 +8,7 @@ import org.springframework.beans.factory.annotation.Value; import org.springframework.security.core.Authentication; import org.springframework.stereotype.Component; -import com.bezkoder.springjwt.security.services.UserDetailsImpl; +import com.ossez.spring.security.security.services.UserDetailsImpl; import io.jsonwebtoken.*; @Component diff --git a/src/main/java/com/bezkoder/springjwt/security/services/UserDetailsImpl.java b/src/main/java/com/ossez/spring/security/security/services/UserDetailsImpl.java similarity index 95% rename from src/main/java/com/bezkoder/springjwt/security/services/UserDetailsImpl.java rename to src/main/java/com/ossez/spring/security/security/services/UserDetailsImpl.java index 6452f34..cfc7ab2 100644 --- a/src/main/java/com/bezkoder/springjwt/security/services/UserDetailsImpl.java +++ b/src/main/java/com/ossez/spring/security/security/services/UserDetailsImpl.java @@ -1,4 +1,4 @@ -package com.bezkoder.springjwt.security.services; +package com.ossez.spring.security.security.services; import java.util.Collection; import java.util.List; @@ -9,7 +9,7 @@ import org.springframework.security.core.GrantedAuthority; import org.springframework.security.core.authority.SimpleGrantedAuthority; import org.springframework.security.core.userdetails.UserDetails; -import com.bezkoder.springjwt.models.User; +import com.ossez.spring.security.models.User; import com.fasterxml.jackson.annotation.JsonIgnore; public class UserDetailsImpl implements UserDetails { diff --git a/src/main/java/com/bezkoder/springjwt/security/services/UserDetailsServiceImpl.java b/src/main/java/com/ossez/spring/security/security/services/UserDetailsServiceImpl.java similarity index 84% rename from src/main/java/com/bezkoder/springjwt/security/services/UserDetailsServiceImpl.java rename to src/main/java/com/ossez/spring/security/security/services/UserDetailsServiceImpl.java index de65d7e..b5e985e 100644 --- a/src/main/java/com/bezkoder/springjwt/security/services/UserDetailsServiceImpl.java +++ b/src/main/java/com/ossez/spring/security/security/services/UserDetailsServiceImpl.java @@ -1,4 +1,4 @@ -package com.bezkoder.springjwt.security.services; +package com.ossez.spring.security.security.services; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.security.core.userdetails.UserDetails; @@ -7,8 +7,8 @@ import org.springframework.security.core.userdetails.UsernameNotFoundException; import org.springframework.stereotype.Service; import org.springframework.transaction.annotation.Transactional; -import com.bezkoder.springjwt.models.User; -import com.bezkoder.springjwt.repository.UserRepository; +import com.ossez.spring.security.models.User; +import com.ossez.spring.security.repository.UserRepository; @Service public class UserDetailsServiceImpl implements UserDetailsService { diff --git a/src/main/resources/application.properties b/src/main/resources/application.properties index d02fe7a..5f0e23e 100644 --- a/src/main/resources/application.properties +++ b/src/main/resources/application.properties @@ -1,9 +1,32 @@ -spring.datasource.url= jdbc:mysql://localhost:3306/testdb?useSSL=false -spring.datasource.username= root -spring.datasource.password= 123456 +spring.jpa.show-sql=true +spring.jpa.hibernate.ddl-auto=none +spring.jpa.hibernate.use-new-id-generator-mappings=false -spring.jpa.properties.hibernate.dialect= org.hibernate.dialect.MySQL5InnoDBDialect -spring.jpa.hibernate.ddl-auto= update +spring.h2.console.enabled=true +spring.h2.console.path=/h2-console +spring.datasource.driverClassName=org.h2.Driver +spring.datasource.url=jdbc:h2:mem:test;DB_CLOSE_ON_EXIT=FALSE +spring.datasource.username=sa +spring.sql.init.schema-locations=classpath:db/schema.sql + +spring.datasource.hikari.connection-timeout=50000 +spring.datasource.hikari.idle-timeout=300000 +spring.datasource.hikari.max-lifetime=900000 +spring.datasource.hikari.maximum-pool-size=10 +spring.datasource.hikari.minimum-idle=10 +spring.datasource.hikari.pool-name=ConnPool +spring.datasource.hikari.connection-test-query=select 1 from dual + +spring.datasource.hikari.data-source-properties.cachePrepStmts=true +spring.datasource.hikari.data-source-properties.prepStmtCacheSize=250 +spring.datasource.hikari.data-source-properties.prepStmtCacheSqlLimit=2048 +spring.datasource.hikari.data-source-properties.useServerPrepStmts=true +spring.datasource.hikari.data-source-properties.useLocalSessionState=true +spring.datasource.hikari.data-source-properties.rewriteBatchedStatements=true +spring.datasource.hikari.data-source-properties.cacheResultSetMetadata=true +spring.datasource.hikari.data-source-properties.cacheServerConfiguration=true +spring.datasource.hikari.data-source-properties.elideSetAutoCommits=true +spring.datasource.hikari.data-source-properties.maintainTimeStats=false # App Properties bezkoder.app.jwtSecret= bezKoderSecretKey diff --git a/src/test/java/com/bezkoder/springjwt/SpringBootSecurityJwtApplicationTests.java b/src/test/java/com/ossez/spring/security/SpringBootSecurityJwtApplicationTests.java similarity index 85% rename from src/test/java/com/bezkoder/springjwt/SpringBootSecurityJwtApplicationTests.java rename to src/test/java/com/ossez/spring/security/SpringBootSecurityJwtApplicationTests.java index 42ffdd0..bcbb038 100644 --- a/src/test/java/com/bezkoder/springjwt/SpringBootSecurityJwtApplicationTests.java +++ b/src/test/java/com/ossez/spring/security/SpringBootSecurityJwtApplicationTests.java @@ -1,4 +1,4 @@ -package com.bezkoder.springjwt; +package com.ossez.spring.security; import org.junit.jupiter.api.Test; import org.springframework.boot.test.context.SpringBootTest;