Tsunayoshi Tsuna Sawada - Katekyo Hitman Reborn 3 'Spring' 카테고리의 글 목록 (2 Page) — 개발하는 핸니
[트러블 슈팅] Authentication Principal is not of type CustomUserDetails. Actual type: java.long.String
·
Spring/Error
💬 들어가기앞서 . . .이 문제는 Spring Security를 활용하여 JWT 인증을 구현하는 과정에서 발생했습니다.로그를 확인하며 디버깅한 결과, Custom한 UserDetails 객체의 특정 필드가 예상한 타입이 아닌 String 타입으로 반환되면서 문제가 발생한 것을 확인할 수 있었습니다. 유사한 문제가 발생하지 않도록 발생한 오류의 원인과 해결 방법을 단계별로 정리하겠습니다.🛠️ [트러블슈팅] Authentication Principal is not of type CustomUserDetails.1. 문제 상황 (Issue)[Authentication Principal is not of type CustomUserDetails. Actual type: java.lang.String] 사용..
[Spring Security] Security 용어와 동작 원리 이해하기
·
Spring/Security
들어가기 앞서 . . .Spring Security는 인증, 검증, 권한 부여를 지원하는 Spring Framework 라이브러리입니다. 많은 개발자들이 편리하게 활용하고 있으며, 저도 몇 번의 프로젝트에서 Spring Security를 적용해 본 경험이 있답니다!덕분에 인터넷에 자료도 많고, 코드도 넘쳐나니까 복사해서 붙여넣기만 하면 끝! 이렇게 쉽게 적용할 수 있죠. 하지만 스프링과 Security는 계속해서 업데이트가 진행되면서, 버전마다 메소드나 기능이 조금씩 다르기도 해요.그런 상태에서 이론 없이 다른 사람 코드 가져다가 수정하다 보면, 에러가 나오고 시간이 쏙쏙 빠져나가죠.. 그래서 이번에는 직접 공식 문서를 읽고,Security에 대한 배경 지식도 쌓고, 기억에 남게 정리하고자 이렇게 글을 ..
[트러블슈팅] application.yml에서 oauth2 설정이 적용되지 않는 이슈
·
Spring/Error
💬 들어가기앞서 . . .Spring Boot 프로젝트에서 OAuth2 로그인 기능을 붙이다가 예상치 못한 에러를 마주하게 되었습니다. 처음엔 단순한 설정 누락인 줄 알았지만, 생각보다 해결까지 꽤 돌아갔던 여정이라, 같은 문제를 겪을 분들께 도움이 되고자 이 글을 작성하게 되었습니다.🛠️ [트러블슈팅] application.yml에서 oauth2 설정이 적용되지 않는 이슈문제 상황 (Issue) • Spring Boot 프로젝트를 실행하던 중, 다음과 같은 에러 메시지가 발생하며 애플리케이션이 정상적으로 시작되지 않았습니다.***************************APPLICATION FAILED TO START***************************Description:Parame..
[SQL]Error: 1406-22001: Data too long for column '?' at row 1
·
Spring
😱 에러사용자의 답변을 받아 컨설팅을 반환하고 feedback 필드에 집어넣는 과정에서 발생한 오류이다.Error: 1406-22001: Data too long for column 'feedback' at row 1SQL Error: 1406, SQLState: 22001(conn=270) Data too long for column 'feedback' at row 1     📌 Error 해석✏️ Error: 1406-22001: Data too long for column '?' at row 1: 우선 에러를 파악해보자Error: 1406-22001: Data too long for column 'feedback' at row 1SQL Error: 1406, SQLState: 22001(conn..
[Spring Security] Security 기본
·
Spring
👩‍💻  Spring Security - 스프링부트 시큐리티  📌 스프링부트 시큐리티 설정✏️ Spring Security 적용하기스프링 시큐리티를 적용하기위해, 아래와 의존성을 추가해주자!의존성을 추가해주면 모든 경로에 대해서 로그인 화면이 보이게 된다. 즉, 현재 프로젝트는 모든 페이지에 대해서 로그인을 통해 접근할 수 있게 된다. Gradleimplementation 'org.springframework.boot:spring-boot-starter-security' Maven org.springframework.boot spring-boot-starter-security     ✏️ SecurityConfig - 시큐리티 설정하기Spring Security를 사용하여 웹 애플리케..
[Jwt]Error creating bean with name 'springSecurityFilterChain' defined in class path resource
·
Spring/Error
😱 에러스프링부트 시큐리티 & JWT 강의를 수강하며 시큐리티를 설정하다 Error creating bean with name 'springSecurityFilterChain' defined in class path resource라는 에러가 발생하였다.🥺 에러를 해결하고 왜 이러한 에러가 발생했는지 알아보자 error   📌 Error 파악✏️ Error creating bean with name 'springSecurityFilterChain' defined in class path resource: 우선 에러를 파악해보자Error creating bean with name 'springSecurityFilterChain' defined in class path resource [org/spri..
[Spring] 컨트롤러 예외처리(Exception Handling)
·
Spring
👩‍💻  Exception Handling  📌컨트롤러 예외처리✏️ 왜 예외처리를 해야할까?예외란 프로그램 실행 중에 발생하는 예상치 못한 상황을 말한다. 이를 적절하게 처리하지 않으면 프로그램이 비정상적으로 종료될 수 있다.예를들어 파일 업로드 기능을 가진 스프링 웹 애플리케이션에서 발생할 수 있는 예외 상황을 생각해보자.사용자가 허용 된 최대 파일 크기를 초과하는 파일을 업로드하려고 할 때, 스프링은 "파일 크기가 너무 큽니다. 더 작은 파일을 업로드해주세요."와 같은 메시지를 사용자에게 제공하여 즉시 오류를 이해하고 수정할 수 있도록 돕는다.   ✏️ 예외 복구 범위영역예외 처리예시메소드 영역try / catch 메소드 영역은 종속된 복구 기능으로 단순히 try/catch를 사용하면 된다클래스..
[Mockito] Mockito란 무엇일까?
·
Spring
👩‍💻  Mockito  📌 Mockito✏️ Mockito란?:단위 테스트를 위해 모의 객체를 생성하고 관리하는 자바 오픈소스 프레임워크실제 객체의 동작을 모방하는 "모의 객체"를 생성하여 코드의 특정 부분을 "격리"시키고, 테스트를 편리하게 할 수 있도록 도와준다.💡 모의객체: 실제 객체의 생성을 대체하여 테스트 코드에 사용되는 객체     📌 JUnit    &    JUnit + Mockito 비교✏️ Mockito를 사용하지 않고 JUnit만을 이용해서 테스트 코드를 작성한다면:JUnit Test  그림은 Mockito를 사용하지 않고 JUnit5만을 사용하여서 서비스를 테스트한 테스트 케이스의 흐름을 보여준다.- @Test를 수행하는 testsIsNotNullCodeList()라는 메..