diff --git a/src/main/java/com/example/oneul/domain/user/dto/LoginDTO.java b/src/main/java/com/example/oneul/domain/user/dto/LoginDTO.java index efa7bd4..afebe12 100644 --- a/src/main/java/com/example/oneul/domain/user/dto/LoginDTO.java +++ b/src/main/java/com/example/oneul/domain/user/dto/LoginDTO.java @@ -1,12 +1,16 @@ package com.example.oneul.domain.user.dto; +import javax.validation.constraints.NotBlank; + import com.example.oneul.domain.user.domain.UserEntity; import lombok.Getter; @Getter public class LoginDTO { + @NotBlank private String username; + @NotBlank private String password; public void setUsername(String username){ diff --git a/src/main/java/com/example/oneul/domain/user/dto/SignUpDTO.java b/src/main/java/com/example/oneul/domain/user/dto/SignUpDTO.java index 69b2bb2..01c5784 100644 --- a/src/main/java/com/example/oneul/domain/user/dto/SignUpDTO.java +++ b/src/main/java/com/example/oneul/domain/user/dto/SignUpDTO.java @@ -1,13 +1,18 @@ package com.example.oneul.domain.user.dto; +import javax.validation.constraints.NotBlank; + import com.example.oneul.domain.user.domain.UserEntity; import lombok.Getter; @Getter public class SignUpDTO { + @NotBlank private String username; + @NotBlank private String password1; + @NotBlank private String password2; public void setUsername(String username ){ diff --git a/src/main/java/com/example/oneul/global/config/security/InterceptorConfig.java b/src/main/java/com/example/oneul/global/config/security/InterceptorConfig.java new file mode 100644 index 0000000..189f529 --- /dev/null +++ b/src/main/java/com/example/oneul/global/config/security/InterceptorConfig.java @@ -0,0 +1,21 @@ +package com.example.oneul.global.config.security; + +import com.example.oneul.global.util.LoginCheckInterceptor; + +import org.springframework.beans.factory.annotation.Value; +import org.springframework.context.annotation.Configuration; +import org.springframework.web.servlet.config.annotation.InterceptorRegistry; +import org.springframework.web.servlet.config.annotation.WebMvcConfigurer; + +@Configuration +public class InterceptorConfig implements WebMvcConfigurer { + @Value("${login-page}") + private String loginPage; + + @Override + public void addInterceptors(InterceptorRegistry interceptorRegistry){ + // TODO: 왜 exception이 다시 prehandler로 돌아가냐 + interceptorRegistry.addInterceptor(new LoginCheckInterceptor(loginPage)) + .excludePathPatterns("/user/login/**", "/user/signup/**"); + } +} diff --git a/src/main/java/com/example/oneul/global/config/security/WebSecurityConfig.java b/src/main/java/com/example/oneul/global/config/security/WebSecurityConfig.java index ef72ce2..38daf9a 100644 --- a/src/main/java/com/example/oneul/global/config/security/WebSecurityConfig.java +++ b/src/main/java/com/example/oneul/global/config/security/WebSecurityConfig.java @@ -19,8 +19,8 @@ public class WebSecurityConfig extends WebSecurityConfigurerAdapter { @Override protected void configure(HttpSecurity httpSecurity) throws Exception { httpSecurity.cors().disable() - .csrf().disable() - .formLogin().disable() - .headers().frameOptions().disable(); + .csrf().disable() + .formLogin().disable() + .headers().frameOptions().disable(); } } diff --git a/src/main/java/com/example/oneul/global/error/GlobalExceptionHandler.java b/src/main/java/com/example/oneul/global/error/GlobalExceptionHandler.java index b19b310..284bbfa 100644 --- a/src/main/java/com/example/oneul/global/error/GlobalExceptionHandler.java +++ b/src/main/java/com/example/oneul/global/error/GlobalExceptionHandler.java @@ -1,6 +1,7 @@ package com.example.oneul.global.error; import com.example.oneul.domain.user.exception.UserAlreadyExistException; +import com.example.oneul.domain.user.exception.WrongUsernameAndPasswordException; import org.slf4j.Logger; import org.slf4j.LoggerFactory; @@ -13,13 +14,19 @@ public class GlobalExceptionHandler { @ExceptionHandler(Exception.class) protected String handleException(Exception e){ - log.debug(e.getMessage()); + log.info(e.getMessage()); return e.toString(); } @ExceptionHandler(UserAlreadyExistException.class) protected String handleUserAlreadyExistException(UserAlreadyExistException e){ - log.debug(e.getMessage()); + log.info(e.getMessage()); + return e.toString(); + } + + @ExceptionHandler(WrongUsernameAndPasswordException.class) + protected String handleWrongUsernameAndPasswordException(WrongUsernameAndPasswordException e){ + log.info(e.getMessage()); return e.toString(); } } diff --git a/src/main/java/com/example/oneul/global/util/LoginCheckInterceptor.java b/src/main/java/com/example/oneul/global/util/LoginCheckInterceptor.java index 9168f2c..70fea9b 100644 --- a/src/main/java/com/example/oneul/global/util/LoginCheckInterceptor.java +++ b/src/main/java/com/example/oneul/global/util/LoginCheckInterceptor.java @@ -8,14 +8,16 @@ import com.example.oneul.domain.user.domain.UserEntity; import org.slf4j.Logger; import org.slf4j.LoggerFactory; -import org.springframework.beans.factory.annotation.Value; import org.springframework.web.servlet.HandlerInterceptor; public class LoginCheckInterceptor implements HandlerInterceptor{ - @Value("${login-page}") private String loginPage; - private final Logger log = LoggerFactory.getLogger(LoginCheckInterceptor.class); + + public LoginCheckInterceptor(String loginPage){ + this.loginPage = loginPage; + } + @Override public boolean preHandle(HttpServletRequest request, HttpServletResponse response, Object handler) throws Exception { log.info("login check prehandler"); diff --git a/src/main/resources/application-local.yml b/src/main/resources/application-local.yml index 72c452f..57e843a 100644 --- a/src/main/resources/application-local.yml +++ b/src/main/resources/application-local.yml @@ -30,4 +30,4 @@ logging: hibernate: SQL: DEBUG -log-in-page: www.naver.com \ No newline at end of file +login-page: https://www.naver.com \ No newline at end of file diff --git a/src/main/resources/application-prod.yml b/src/main/resources/application-prod.yml index 757b4c2..17f0b64 100644 --- a/src/main/resources/application-prod.yml +++ b/src/main/resources/application-prod.yml @@ -31,4 +31,4 @@ logging: hibernate: SQL: DEBUG -log-in-page: www.naver.com \ No newline at end of file +login-page: https://www.google.com \ No newline at end of file diff --git a/src/main/resources/application-test.yml b/src/main/resources/application-test.yml index 3f6f49e..c75fa68 100644 --- a/src/main/resources/application-test.yml +++ b/src/main/resources/application-test.yml @@ -27,4 +27,6 @@ logging: web: DEBUG org: hibernate: - SQL: DEBUG \ No newline at end of file + SQL: DEBUG + +login-page: https://www.naver.com \ No newline at end of file