Programming/Spring

Programming/Spring

Long vs UUID 아이디 타입 정하기!

가상은행 프로젝트를 진행하면 거래번호 타입을 UUID로 할 지 Long으로 할 지 고민을 했다. Long [장점] - 성능: 숫자 기반은 일반적으로 인덱싱과 검색이 빠르다. Auto Increment를 사용하면 새로운 ID를 생성하고 관리하는 것이 효율적이다. [단점] - 예측 가능성: 숫자 ID는 연속적이고 예측이 가능해서 보안 측면에서 약점이 될 수 있음 UUID [장점] - 유일성: 16진수 36자 문자열(32개의 문자와 4개의 하이픈)로 표시되는 128비트 값이기 때문에 아주 높은 확률로 고유한 값을 가진다. 총 340,282,366,920,938,463,463,374,607,431,768,211,456개가 사용가능하다. 엄청 희박하겠지만, 이론상으로는 중복이 될 가능성이 있다. - 보안: 예측하..

Programming/Spring

BaseEntity 설정

BaseEntity 사용 이유 생성일, 수정일과 같은 모든 엔티티의 공통 속성은 BaseEntity를 사용함으로써 중복을 방지해주고 코드의 일관성을 유지해준다. @MappedSuperclass: BaseEntity가 실제 entity의 기능을 하는 것이 아니기 때문에 실제 entity에 매핑해주기 위해 사용 @EntityListeners: 하나 이상의 엔티티 리스너 클래스를 지정하기 위해 사용 AuditingEntityListener.class: 엔티티의 생성 시간과 수정 시간을 자동으로 감시 @CreatedDate: 생성일 자동 할당 @LastModifiedDate: 수정일 자동 할당 @EntityListeners(AuditingEntityListener.class) @Getter @MappedSupe..

Programming/Spring

[Spring] spring 어노테이션 에러

문제 발생 잘 되던 프로젝트가 전체적으로 빨간색으로 바뀌었다. 원인 spring dependency가 제 기능을 하지 못한 것. 해결 [build.gradle]에서 dependencies를 실행시켜준다.

h-yeon
'Programming/Spring' 카테고리의 글 목록