본문 바로가기
스프링과 JPA 기반 웹 어플리케이션 개발/7부 알림

71. 알림 도메인

by Backchus 2020. 5. 10.

  • Notification에서 Account로 ManyToOne 단방향 관계

 

Notification

  • 제목
  • 링크
  • 짧은 메시지
  • 확인 여부
  • 누구에게 (Account)
  • 언제
  • 알림 타입(새 스터디, 참여중인 스터디, 모임 참가 신청 결과)

 

알림 기능을 담당 할 Notification 엔티티 생성

package me.weekbelt.studyolle.modules.notification;

@Getter @Setter @EqualsAndHashCode(of = "id")
@Entity
public class Notification {

    @Id
    @GeneratedValue(strategy = GenerationType.IDENTITY)
    private Long id;

    private String title;

    private String link;

    private String message;

    private boolean checked;

    @ManyToOne
    private Account account;

    private LocalDateTime createdLocalDateTime;

    @Enumerated(EnumType.STRING)
    private NotificationType notificationType;
}

 

어떤 알림인지 구별하기위해 NotificationType을 enum 타입으로 생성

package me.weekbelt.studyolle.modules.notification;

public enum NotificationType {
    STUDY_CREATED, STUDY_UPDATED, EVENT_ENROLLMENT
}

 

참고: https://www.inflearn.com/course/%EC%8A%A4%ED%94%84%EB%A7%81-JPA-%EC%9B%B9%EC%95%B1#

 

스프링과 JPA 기반 웹 애플리케이션 개발 - 인프런

이 강좌에서 여러분은 실제로 운영 중인 서비스를 스프링, JPA 그리고 타임리프를 비롯한 여러 자바 기반의 여러 오픈 소스 기술을 사용하여 웹 애플리케이션을 개발하는 과정을 학습할 수 있습�

www.inflearn.com