일단 common에 공통으로 사용하는 코드를 작성해주었다
나는 BaseEntity에는 생성일, 수정일, 삭제일의 시간을,
BaseUserEntity에는 생성자, 수정자, 삭제자의 사람을 저장하도록 하였다.
| package com.qpang.common.entity; import jakarta.persistence.Column; import jakarta.persistence.EntityListeners; import jakarta.persistence.MappedSuperclass; import lombok.Getter; import org.springframework.data.annotation.CreatedDate; import org.springframework.data.annotation.LastModifiedDate; import org.springframework.data.jpa.domain.support.AuditingEntityListener; import java.time.LocalDateTime; @Getter @MappedSuperclass @EntityListeners(AuditingEntityListener.class) public abstract class BaseEntity { @CreatedDate @Column(updatable = false) protected LocalDateTime createdAt; @LastModifiedDate protected LocalDateTime updatedAt; protected LocalDateTime deletedAt; } |
package com.qpang.common.entity; import jakarta.persistence.Column; import jakarta.persistence.EntityListeners; import jakarta.persistence.MappedSuperclass; import lombok.Getter; import org.springframework.data.annotation.CreatedBy; import org.springframework.data.annotation.LastModifiedBy; import org.springframework.data.jpa.domain.support.AuditingEntityListener; import java.time.LocalDateTime; @Getter @MappedSuperclass @EntityListeners(AuditingEntityListener.class) public abstract class BaseUserEntity extends BaseEntity { @CreatedBy @Column(updatable = false) protected Long createdBy; @LastModifiedBy protected Long updatedBy; protected Long deletedBy; // soft delete public void delete(Long userId) { this.deletedBy = userId; this.deletedAt = LocalDateTime.now(); } } |
softDelete 관련해서 수정할 사항이 있을수도 있지만 일단 지금은 개발시간이 촉박하기때문에 softDelete로 어느정도 돌아가는것처럼 보여서 다음 단계로 넘어갔다.
common 코드를 사용하기 위해서는 common 코드가 빌드가 되어서 jar형태로 라이브러리화 되어야하는데 지금 그 부분에서 에러가 나서 고치는중 !
'Spring 개발일지' 카테고리의 다른 글
| [대규모 AI 시스템 프로젝트] 상품 도메인 구현 및 리팩토링 하기 (0) | 2026.04.02 |
|---|---|
| [대규모 AI 시스템 프로젝트] MSA에서 공통 코드 관리하기 + 업체 도메인 구현 (1) | 2026.04.01 |
| [대규모 AI 시스템 프로젝트] MSA에서 공통 코드 관리하기 (1) (1) | 2026.03.30 |
| [대규모 AI 시스템 프로젝트] 업체 및 상품 도메인 분석/API 명세서 작성, 유스케이스 도식화 (0) | 2026.03.27 |
| [대규모 AI 시스템 프로젝트] 도메인 추출 및 배송 도메인 분석 (0) | 2026.03.26 |