본문 바로가기
728x90

IT 이야기/Java22

[JWT] Java Web Token Spring security를 공부하다보면 JWT를 만나게 됩니다. 보안 인증을 JWT 토큰으로 지원할 수 있고 생각보다 높은 성능의 보안을 지원합니다. https://docs.spring.io/spring-security/site/docs/current/reference/html5/ Spring Security Reference In Spring Security 3.0, the codebase was sub-divided into separate jars which more clearly separate different functionality areas and third-party dependencies. If you use Maven to build your project, these are th.. 2021. 11. 2.
[JPA] UUID로 findBy 조회가 안되는 이유 JPA로 user id를 UUID로 설정하는 경우가 종종 있습니다. public class Users { @Id private UUID userId; } 그리고 JPA로 findByUserId(); 메서드로 유저 정보를 검색 쿼리를 던지는 순간 우리는 조회에 실패하고 null 값을 리턴하는 것을 볼 수 있습니다. 한참을.. 삽질하다 원인을 찾았는데 먼저 Hibernate가 mysql에 설정한 데이터 타입을 보겠습니다. binary(255)로 설정되어 있습니다. 그런데 우리가 생성한 UUID 값을 찍어보면 binary(16)인 것을 볼 수 있습니다. 이렇게 되면 Hibernate는 16짜리 binary를 날리는데 mysql은 255를 채워야 하는 경우가 발생합니다. 그럼 우리의 mysql은 빈 공간을 pa.. 2021. 8. 15.
[JPA] Entity의 N:M 관계를 개발하면서 느낀 것 https://techblog.woowahan.com/2595/ Legacy DB의 JPA Entity Mapping (복합키 매핑 편) | 우아한형제들 기술블로그 {{item.name}} 안녕하세요. 우아한형제들에서 배달의민족 서비스의 광고시스템을 개발하고 있습니다. 시스템을 점진적으로 Spring Boot / JPA 기반으로 이관하면서 경험했던 내용을 공유하고자 합니다. techblog.woowahan.com 사이드 프로젝트를 하면서 다대다 관계에 많은 고민을 하게 되었는데 구글에 검색해보니 많은 분들이 JPA에서 다대다 관계 즉, M:N관계를 설정할때 많은 고민을 하는 것 같습니다. 결론부터 말하자면 M:N, 다대다 관계는 중간에 엔티티를 하나 두는 방식을 사용하는 것을 권장하고 있습니다. 개발자들.. 2021. 8. 10.
springframework.http.converter.HttpMessageNotWritableException: Could not write JSON: JsonObject; 미치는줄 알았습니다. [org.springframework.http.converter.HttpMessageNotWritableException: Could not write JSON: JsonObject; nested exception is com.fasterxml.jackson.databind.JsonMappingException: JsonObject (through reference chain: com.google.gson.JsonObject["asString"])] 이 에러가 죽을때까지 잡히지 않았습니다. Ajax의 contentType, mthod, dataForm.... 수 많은 방법을 시도해 봤지만 전부 실패했습니다. 혹은 오히려 버그만 더 생겼습니다. 그러다가 머리를 땡.. 하고 스쳐간 ap.. 2021. 8. 8.
728x90