최종 목표
[ ] JSON을 주고받는 API 방식의 서버 설계 (타임리프로 구현 후 → API로 전환)
[x] Memory repository가 아닌, MySQL을 이용한 DB 연결
기술 스택
Java Spring boot framework
선정 이유
일단 내가 공부해둔게 이거라서, 활용 해보고 싶어서가 가장 크다.
목표
스프링 MVC 패턴 숙지
익숙한 thymeleaf를 이용해서 먼저 구현해보고,
JSON을 이용하여 API 구현 해보기
DataBase : MySQL
선정 이유
오픈 소스
관계형 데이터베이스 (다른 관계형 데이터베이스로의 전환 쉬움)
오라클 다음으로(얘는 오픈소스가 아님) 가장 많이 사용한다는데, 그 이유를 몸소 체험해보고 싶어서
MySQL vs. Oracle Comparison
목표
엔티티, 트랜잭션 등 DataBase 관련 용어의 이해
SpringBoot framework와 RDBMS의 관계 이해
항상 마음에 새길 것
GitHub 공개 리포지토리에 수정이 조금이라도 있을 경우, 커밋할 것. (매일 있겠지!)
당연히 처음엔 Velog보다 못한 스레기가 나올 것이니, 야생형 학습에 의의를 둘 것.
스레기를 만들어도, 나중에는 예쁘게 바꾸어줄것.
JSON을 이용한 REST API와 ThymeLeaf를 이용한 구현의 차이를 학습할 것.
절대 남의 코드를 보지 말 것.
검색 영어로 할 것. 영어 자료를 무서워하지 말자. 논문보다 덜 무섭다.
구현해야 하는 것 (중요도 순서)
개인 홈
글 목록
최근 것이 상위에 노출되도록 해보자.
타임라인 처럼, 동적 조회를 구현해보자. (스스로 공부)
시리즈 페이지
글을 시리즈 단위로 관리하기 위한 방법은 ? → 시리즈 관리 필드를 이용해야 한다.
시리즈는 고객이 필드를 마음대로 작성하여 넘겨줄 수 있고, 그게 하나의 목록으로써 관리되어야 한다.
소개 페이지
새글 작성 버튼
검색 버튼 (검색 창으로 넘어간다)
내 프로필을 눌렀을 때
내 벨로그
임시 글
읽기 목록
설정
로그아웃 → 로그아웃 상태에서는 개인 페이지를 들어가는 버튼이 없다. 즉, 로그인 상태에서만 개인 홈에 가는 버튼이 생겨야 함
git hub 접근 버튼
email 접근 버튼
새 글 작성 페이지
제목 입력란
태그 입력란
H1, H2, H3, H4 … 등 글쓰기에 도움되는 기능 구현란
글쓰기란
나가기 버튼
임시저장 버튼
출간하기 버튼
작성한 글 조회
통계 버튼
수정 버튼
삭제 버튼
하트
공유
작성한 글 수정
작성 페이지와 다른 부분 : 버튼이 수정하기임
velog home (Trending)
조회수 기반으로 리포지토리의 글들이 올라오게 해야 함.