본문 바로가기

Java/Spring 프로젝트

0. 프로젝트 설계 [Travelers]

반응형

 프로젝트 가제 - Travelers 

⦁ 컨셉

- 같이 여행을 갈 사람을 구하는 커뮤니티 형식의 웹 페이지

 

⦁ 참여인원

- 4명 : mh, js, jw, ej

 

⦁ 분담

mh(조장, 본인) :

1. 정보 공유 게시판 - 목록 띄우기, 글 작성, 수정, 삭제, 댓글, 검색, 해당 게시판 DB 관리

2. 로그인 - 아이디 찾기, 비밀번호 찾기, 비밀번호 암호화

3. 회원가입 - 입력받은 데이터 유효성 검사, 이메일 API 적용 후 이메일 인증 구현

4. 마이페이지 - 개인정보수정, 비밀번호 변경, 회원탈퇴 

5. 어드민페이지 - 신고 글 관리

6. 게시판 신고 기능 구현

7. CSS 템플릿 적용 및 전체 기본 틀 작성

 

js:

1. 여행 리뷰 게시판 (목록 띄우기, 글 작성, 수정, 삭제, 댓글, 검색, 해당 게시판 DB 관리)

2. 게시판 웹 에디터 적용 (Smart Editor)

3. 게시판 추천 기능 구현

4. 마이페이지 - 여행 수첩 (다녀온 여행지 목록 띄우기, 추가, 삭제, 수정)

5. 담당 페이지 CSS 템플릿 적용

 

jw:

1. 동행 찾기 페이지 (목록 띄우기, 글 작성, 수정, 삭제, 댓글, 상세검색, 해당 게시판 DB 관리)

2. 동행 찾기 페이지 달력 기능 구현

3. 담당 페이지 CSS 템플릿 적용

 

ej:

1. 자유 게시판 (목록 띄우기, 글 작성, 수정, 삭제, 댓글, 검색, 해당 게시판 DB 관리)

2. 게시판 웹 에디터 적용 (Smart Editor)

3. 마이페이지 - 내가 작성한 글 목록

4. about 페이지

5. 담당 페이지 CSS 템플릿 적용

 


 사용 언어와 프로그램 

⦁ Java - Eclipse (Spring MVC Project로 진행)

⦁ JSP - EL, JSTL, JavaScript, JQuery

⦁ Oracle - Oracle SQL Developer

⦁ Apache Tomcat (Server)

 사용된 프레임워크, 라이브러리 및 기능 

⦁ Spring 프레임워크

⦁ Mybatis 프레임워크 - Oracle

⦁ Transaction : 하나의 논리적인 작업 단위를 구성하는 연산들의 집합

   - 하나로 묶인 쿼리문 중 하나라도 실행에 실패시 롤백시킨다.

⦁ Ajax : JavaScript(JQuery)와 XML을 이용한 비동기적 정보 교환 기법 - JSON 형태의 데이터로 정보 교환

⦁ Java Mail API - 이메일 인증에 사용

⦁ 네이버 Smart Editor - 게시판에 사용, 이미지 업로드에 용이

⦁ Spring Security

 

Mybatis로 DB를 관리

Transaction 사용으로 에러 발생시 DB에 잘못된 데이터가 저장되는 것을 방지

Ajax로 비동기식 페이지 구현

Java Mail API로 이메일 인증 및 임시 비밀번호 발급 구현

Smart Editor를 사용해 이미지 첨부 및 글 꾸미기 기능 구현

Spring Security로 패스워드 암호화

 


 기본 페이지 설계 

~~ => 기능별 나눔

- ~~ / 숫자) ~~ => 꼭 구현해야되는 상세기능이나 요소

숫자. ~~ => 보이는 페이지

 

⦁ 메인 페이지

⦁ 로그인 페이지

    1. 로그인 기능

    2. 아이디 찾기 페이지

    3. 비밀번호 찾기 페이지 - 임시 비밀번호 이메일로 전송

    4. 중복 로그인 막기

⦁ 회원가입

    1. 이용약관 동의 페이지

    2. 회원가입 양식 페이지 - 모든 데이터에 대한 유효성 검사 구현, 모든 데이터 반드시 기입

       1) 아이디 - 중복확인, 5자 이상의 영어 소문자, 숫자 사용 가능

       2) 비밀번호 - 영어 대소문자, 숫자, 특수문자 전부 사용 / 비밀번호 암호화 구현

       3) 닉네임 - 중복확인, 한글, 영어, 숫자 사용 가능

       4) 이메일 - 중복확인(아이디, 비밀번호 찾기에 사용되기 때문에 유일값이어야 함),

          이메일 API을 이용한 인증코드 전송

       5) 성별 - 여자, 남자

       6) 생년월일 - 여행에 대한 안전성을 위해 성인만 이용가능하게 제한 (2001년생 이전의 출생자)

    3. 가입 완료 페이지

⦁ 마이페이지 / 어드민페이지

    - 로그인한 계정이 Admin 계정이라면 어드민 페이지로 표기

    1. 회원 정보 수정 페이지 - 기능 사용 전 사용자 본인 확인을 위해 비밀번호를 확인

    2. 회원 비밀번호 변경 페이지 - 기능 사용 전 사용자 본인 확인을 위해 비밀번호를 확인

    3. 회원 탈퇴 페이지 - 기능 사용 전 정보가 다 사라짐에 대한 동의를 구하고,

       사용자 본인 확인을 위해 비밀번호를 확인 후 회원 탈퇴 진행

    4.여행 수첩 페이지 - 사용자가 다녀온 여행에 대한 간단한 기록하는 페이지. 여권 형식으로 UI를 구현

    5. 본인이 작성한 글을 한번에 보는 페이지 / 어드민의 경우 : 공지, 이벤트 글 관리 페이지로 표기

    6. 현재 정보를 확인 할 수 있는 페이지

    7. 어드민 전용 신고 글 관리 페이지

⦁ 여행 동행 찾기 페이지

    - 다른 게시판들과 다른 모양으로 글 목록 띄우기, 글 작성, 수정, 삭제, 댓글, 검색 기능

    - 웹 에디터를 이용한 글 작성 구현 (Smart Editor를 이용한 이미지 업로드 기능 및 글 꾸미기))

    - Ajax를 이용한 비동기식 댓글 기능 구현

    1. 글 목록 페이지

       1) 상세 검색 기능 - 선택한 체크박스에 해당하는 글 검색

       2) 글 목록

       3) 달력에 동행 찾는 중인 아이디(글) 띄우기

    2. 글 작성 페이지

       - 체크 박스로 여행 조건에 대한 항목 선택 후 검색

⦁ 게시판

    - 리스트 형식으로 글 목록 띄우기, 글 작성, 수정, 삭제, 댓글, 검색 기능

    - 웹 에디터를 이용한 글 작성 구현 (Smart Editor를 이용한 이미지 업로드 기능 및 글 꾸미기))

    - Ajax를 이용한 비동기식 댓글 기능 구현 (댓글 삭제 시, '삭제된 댓글입니다'라고 표현)

    - 로그인한 계정이 일반 유저일 경우와 관리자일 때를 구분

    - 상단에 Admin(관리자)가 작성한 글은 강조해서 표시

    - 추천, 신고 기능 구현

    1. 여행 정보 공유 게시판 (태그 : 맛집, 관광지, 이동수단, 숙박)

    2. 여행 리뷰 게시판

    3. 자유 게시판

    * 로그인한 계정이 Admin(관리자)일 경우

       1) 글 상세보기 페이지에서 모든 댓글을 삭제할 수 있게 구현. 대댓글도 같이 삭제되게 구현.

          (일반 유저가 댓글 삭제 했을 때와 달리 아예 DB에서 삭제)

       2) 글 상세보기 페이지에서 모든 글을 직접 삭제 할 수 있게 구현 (수정은 불가능)

       3) 글 작성시 공지/이벤트 태그 설정을 할 수 있음.

⦁ About

    - Travelers의 각 페이지별 설명을 서술

    - 만든이 표기

 


반응형

'Java > Spring 프로젝트' 카테고리의 다른 글

2. 게시판 구현  (0) 2020.07.19
1. Github 협업 준비  (0) 2020.07.19