AttachmentEntity.java
역할
- DB에서 첨부파일 정보를 저장하는 JPA 엔티티
- Task와 업로더(User)와 연관된 파일 메타데이터 관리
- Soft delete, 파일 저장 경로, MIME 타입, 크기 정보 포함
1. 필드
Long id; // 첨부파일 고유 ID, DB PK
Long taskId; // 연관 업무(Task) ID
Long uploaderId; // 업로더(User) ID
String originalFilename; // 사용자가 업로드한 원본 파일명
String storedFilename; // 서버 저장용 UUID 포함 파일명
String contentType; // MIME 타입 (ex: image/png, application/pdf)
Long sizeBytes; // 파일 크기(바이트 단위)
String storagePath; // 실제 저장 경로 또는 접근 가능한 URL
boolean isDeleted = false;// soft delete 여부
LocalDateTime deletedAt; // soft delete 시점
LocalDateTime createdAt = LocalDateTime.now(); // 생성 시점
- id → DB에서 관리하는 첨부파일 고유 ID
- taskId → 첨부파일이 속한 Task ID
- uploaderId → 업로드한 사용자 ID
- originalFilename → 사용자가 업로드한 원본 파일명
- storedFilename → 서버 저장용 UUID 포함 이름 (중복 방지용)
- contentType → MIME 타입
- sizeBytes → 파일 크기(바이트)
- storagePath → 서버 저장 경로 또는 접근 가능한 URL
- isDeleted → soft delete 여부 (true면 조회/화면 제외)
- deletedAt → soft delete 시점
- createdAt → 생성/업로드 시점