Jackson 라이브러리 어노테이션 정리

기본 생성자, getter와 같은 부분을 생략하기 위해서 접근 제어자는 public으로 설정 했습니다.Map 필드를 다루는데 유연성을 제공합니다.name, id 순서로 json데이터가 정렬됩니다.@JsonValue는 전체 인스턴스를 직렬화 할 때 사용하는 단일 메서드입

2024년 4월 13일
·
0개의 댓글
·

직렬화에 대한 이해

JPA(Hibernate)를 사용해서 복합키 클래스를 정의할 때, @IdClass, @EmbeddedId 에 Serializable을 필수적으로 구현해야 했습니다. 복합키 객체는 왜 직렬화가 가능해야 하는가?엔티티는 직렬화가 필요 없는가?위 의문에 대한 해답과 직렬화에

2024년 4월 7일
·
0개의 댓글
·
post-thumbnail

SSO

한번의 로그인으로 여러 허용된 자원에 접근할 수 있도록 하는 기술입니다.권한을 얻으려는 서비스의 인증방식을 변경하기 어려울 때 많이 사용되는 방식입니다.Target Service에 로그인하기 위한 정보가 id/password 라면, Agent 가 해당 정보를 가지고 있

2023년 9월 9일
·
0개의 댓글
·

Fetch Join + Paging

작성중...

2023년 8월 6일
·
0개의 댓글
·
post-thumbnail

N+1

쿼리 1번으로 N건을 조회했을 때, 관련 컬럼을 얻기 위해 쿼리를 N번 추가 수행하는 문제 입니다.한명의 User가 여러개의 Article을 가질 수 있는 일대다 구조를 보겠습니다.User의 article list, Article의 user 모두 Fetch Type을

2023년 8월 6일
·
0개의 댓글
·
post-thumbnail

JPA 영속성 컨텍스트

JPA는 동등성을 보장해주는데 findMember를 진행하면 주소값이 왜 달라질까?member1을 save할 때는 주소값이 달라지지 않을까 ?SimpleJpaRepository의 save 로직이다.isNew 상태는 id 값의 식별자값이 존재 하는지 여부에 따라 분류한다

2023년 8월 6일
·
1개의 댓글
·
post-thumbnail

JVM

static 은 런타임시 메소드 영역에 저장된다고 알고 있었습니다.멀티스레드를 공부 하던중 heap에 할당되는 항목에 static variables가 있어 혼란스러워서 찾아봤습니다.지금까지 메소드 영역과 영구영역은 각각 다른게 존재하고, Java 8 이후 부터는 영구영

2023년 3월 30일
·
0개의 댓글
·
post-thumbnail

Index

인덱스란 추가적인 쓰기 작업과 저장 공간을 활용하여 데이터베이스 테이블의 검색 속도를 향상시키기 위한 자료구조이다.DBMS는 index를 항상 최신의 정렬된 상태로 유지해야 원하는 값을 빠르게 탐색할 수 있다. 그렇기 때문에 인덱스가 적용된 컬럼에 INSERT, UPD

2023년 2월 27일
·
0개의 댓글
·

DI, Bean, Proxy

DI (Dependency Injection) DI란? 의존 주입을 이해하려면 '의존'이 무엇인지 알아야 한다. 의존은 객체 간의 의존을 의미한다. 위 코드처럼 한 클래스가 다른 클래스의 메서드를 실행할 때 이를 '의존'한다고 표현한다. MemberRegisterS

2023년 1월 27일
·
0개의 댓글
·
post-thumbnail

Git Rebase

merge와 rebase는 모두 두 개의 브랜치를 하나로 병합하는 기능을 제공합니다.feature 브랜치에서 main을 머지하면 머지 커밋이 생성됩니다.머지 커밋은 '어떤 순간에 어느 브랜치의 변경사항이 머지되었다'는 정보를 주는 커밋으로 무의미 하지 않지만 다른 커밋

2023년 1월 13일
·
0개의 댓글
·
post-thumbnail

OAuth2.0 사용기

사이드 프로젝트에서 Spring boot가 제공해주는 OAuth2.0 library를 통해 로그인을 구현하며 겪었던 문제들을 정리해 보겠습니다.다중 서버로 scale out을 진행하고 로그인이 진행되지 않았습니다.원인을 찾아보니 OAuth2.0은 세션을 사용하여 로그인

2023년 1월 12일
·
0개의 댓글
·