💡 시작하기 전에
" 완벽주의를 경계하라 "
완벽을 추구한 나머지 실수와 실패를 두려워 하게되고, 과정은 생각지 않고 결과에만 집중한다. 라는 뜻으로 해석했다.
지금의 나처럼 필요한 스택을 모두 배워서 거창한 프로젝트를 해야지 라는 생각만 할 뿐 시작조차 안하고 있는 나에게 해주고 싶은 말이다.
그래서 일단은 시작하기로 했다 🔥
💻 사용 기술
- 프레임워크 : Spring
- ORM : JPA
- 데이터베이스 : MariaDB
- 템플릿 엔진 : thymeleaf
✔ 게시판 기능
회원가입
로그인/로그아웃
게시물 목록 조회
게시물 상세 조회
게시물 등록
게시물 수정
게시물 삭제
게시물 목록 페이징
게시물 검색
🔎 페이징, 검색 과 같은 더 필요한 기능들은 추후에 기능확장을 통해 추가해볼 생각입니다.
✔ EntityClassDiagram
JPA를 사용하기 때문에 클래스 다이어그램을 먼저 설계해 보았습니다.
너무 간단해서 다른 Entity도 추가해볼까 했지만 확장하면서 기능을 추가하는 경험도 하고싶어서 최대한 간단하게 설계해 보았습니다.
1. 한명의 Member는 여러개의 Post(게시글)을 작성할 수 있기 때문에 1:N관계로 설정하였습니다.
2. Address는 Member에서만 사용되지만 ValueType을 사용해 보기 위해 추가하였습니다.
3. Post 에만 Member객체를 추가하여 @ManyToOne 단방향 매핑을 사용할 계획입니다.
( Member를 통해 Post의 정보를 가져올 경우도 있겠지만 나중에 JPQL을 사용하여 가져올 계획입니다.)