본문 바로가기

프로젝트

[SpringBoot] 경매사이트 만들기 - 분석,설계 및 부트스트랩 템플릿 적용

사실 설계했던 UseCase다이어그램 , ERD를 먼저 포스팅 했어야 됐는데 못해가지고

지금 간단하게라도 한번에 포스팅 하려한다. (참고로 이번에 DDL작성 포스팅은 못할듯..ㅠ 하지만 지금 작성중이긴 함)

 

●요구사항분석 - 1차

요구사항 명세서?

내가 생각했던 웹 사이트를 만들기 위해 기본적으로 갖춰야할 요구들이다.

우선순위를 나눠서 먼저 개발해야할 것들과 나중에 개발해야 할것들로 나눠져있고, 개발하면서 계속해서 추가할 예정이다.

 

 

●UseCaseDiagram - 1차

1차 유즈케이스

1차 유즈케이스 다이어그램으로 대략적인 사용자 기능들 중심으로 만들어봤다.

기본적으로 경매 게시물, 자유게시판 게시물이 나눠져 있지만 한번에 게시물 등록이란 주체로 통일했다.(어차피 혼자하는 프로젝트라...)

추후 수정사항이 있으면 계속해서 그때그때 올릴 예정이다.

 

 

●ERD - 1차

1차 ERD

혼자서 설계해본 1차로 만든 ERD이다. 게시판 종류 테이블을 따로 추가한 이유는 게시판이 경매게시판, 자유게시판으로 나눠져 있기 때문이고, 각 게시글판 마다 신고나 댓글 테이블을 만들지 않고 게시판 종류 테이블을 부모테이블로 해서 게시글 신고 및 댓글에 대해 하나의 테이블로 관리할 생각이다.

 

이후에 개발을 진행하면서 테이블간 중복되는 데이터가 있을때,

추가 테이블이 필요할때, 필요없을때 등 상황에 따라 계속 수정할 예정이다.

 

그리고 추천기능을 만들때 기본적으로 좋아요의 상관관계를 기준으로 기능을 만들건데,,좀 빈약한거 같아서 추가적인 아이디어를 구상중이다..

 


●부트스트랩 템플릿 적용

일단 적용했을때 메인의 모습이고 아직 네비게이션바를 수정하지 않았다. 그리고 중간에 보이는 5개의 항목에는 경매물건이 들어갈 예정이다.

참고로 이 부트스트랩 템플릿은... 메인에 대한 레이아웃만 잘 적용돼있어서 각 페이지를 구성하는 레이아웃은 내가 어떻게 잘 활용해서 만들어야 해서 시간이 매우 오래걸릴듯...ㅠㅠㅠ css도 잘모르는디..!

 


●아파치 타일즈 + 부트스트랩 템플릿 적용 방법

이전에 포스팅에서 아파치 타일을 적용하는 방법을 말했는데, 이제 그 타일즈에 부트스트랩을 적용해보려한다. 적용했던 순서대로 말해 보겠다.

 

1. 부트스트랩 템플릿에 있는 각종 폴더는 static으로!!

 

 

boot에서 static 폴더는 이름 그대로 정적인 파일들을 모아놓는 폴더다.

부트스트랩 템플릿 적용을 위해선 우선적으로 템플릿에 적용돼 있는 각종 js, img, css 파일이 static 폴더 안에 있어야한다.

 

 

 

 

 

2. layout.jsp에 js,font,css등 다 적용하기.

아파치 타일즈에서 나는 header,body,footer 부분으로 나눠놨는데 공통적인 정책처리를 layout.jsp에서 처리돼도록 tiles-config.xml 에서 설정해 놨다. 따라서 화면에 적용되는 css, js 등에 대한 링크는 모두 layout.jsp에 넣어주면 된다.!

 

 

3. header 및 footer 적용.

html파일에서 하나로 돼있던 헤더섹션과 풋터섹션을 따로 header.jsp , footer.jsp 파일에 넣어준다.

footer.jsp
header.jsp

이르케 각각 넣어주면 어느 페이지를 가든지 일단 웹 페이지상의 헤더와 풋터부분이 공통적으로 적용된다.

추후에 유저의 권한에 따라 몇가지 버튼이나 카테고리는 바뀌겠지만,,,그외에는 모두 공통적으로 적용시킨것!!

 


★이슈사항

이슈사항은... 지금은 딱히 없지만 고민은 있음..!

일단 jsp그대로 진행하긴 하는데 프론트쪽도 react로 구성하고 싶음. 이부분에 대해선 공부가 필요하다.

하지만 지금 당장 급한건 아니기 때문에 일단 전체적인 레이아웃을 빨리 적용시키고 백쪽에 집중할 생각이다.

 

그리고 추천기능은 위에서 말했다시피 좋아요의 상관관계 외에 다른요소 추가를 고려해 보도록하자.. 일단 당장생각 나는건 입찰기록을 활용하는건데 그럴라면 테이블의 추가가 필요하고 로직이 조금더 복잡해질듯..! 일단 개발하면서 더 좋은 생각이 있는지 고민하자!

 

그리고 프로젝트가 어느정도 진행 됐을때 깃허브에 기관을 만들어서 pr및 merge할 예정이다.(혼자지만...)

 

★다음에 할꺼

DB테이블 생성.

로그인 및 회원가입 페이지.

로그인 및 회원가입 구현.