4. 개발되는 Java 코드의 경로
Spring 설정 파일의 경로
JSP 파일의 경로, 공통부분 <include>사용
Maven의 설정 파일
Spring MVC 컨트롤러 설정
XML 네임 스페이스. MyBatis-Spring에서 XML Mapper 인식
디자인 및 자바스크립트 파일의 경로
Web 환경 설정 파일
Log 파일
MyBatis 설정 파일
XML Mapper 파일의 경로
*
• CSS3
• HTML5, JSP
• JavaScript
• jQuery 3.4.0
*
• Spring Framework 4.2.4
• Java JDK 1.8_201
• Tomcat 8.0
• MyBatis 3.2.8
• MySQL 5.7.21
• Maven 3.3.9
• Log4j 1.16
5. BOX_OFFICE / SHOWING_MOVIE / SOON_MOVIE
회원가입 나의 예매내역 영화 상세보기 영화 예매하기
예매하기_상영정보 선택회원가입_동의
회원가입_입력
KCJ CINEMA
로그인 / 로그아웃
아이디 / 패스워드 찾기
패스워드 변경 예매하기_좌석 선택
예매하기_예매 완료회원가입_완료
6. * BOX_OFFICE
• 영화 평점 순 조회 (현재 상영작, 상영 예정작)
• 현재 상영작 : 평점 및 별점 표시
• 상영 예정작 : 현재 날짜를 기준, D-day 표시
* SHOWING_MOVIE
• 영화 이름 순 조회 (현재 상영작)
• 현재 상영작 : 평점 및 별점 표시
* SOON_MOVIE
• 영화 이름 순 조회 (상영 예정작)
• 상영 예정작 : 상영날짜 및 D-day 표시
7. * 회원 정보 중복 검사, 아이디 중복 검사
• 입력된 이름과 휴대전화가 이미 가입되어 있는가?
• SQL문 : EXIST 사용
* 비밀번호를 암호화 하여 서버에 전송 및 저장
• RSA, SHA256 암호화
* 회원가입 유효성 검사
• 이름 : 2~20자 이하로 한글, 영문만 가능
• 아이디 : 5~10자로 영문, 숫자만 가능
• 패스워드 : 10~20자로 영문, 숫자, 특수문자 무조건 포함
• 생년월일 : 숫자만 가능, 8자리 중 년, 월, 일을 구분하여 각각 유효성 검사
• 휴대전화 : 10자리 이상으로 숫자만 가능
• 이메일 : 이메일 형식에 따른 유효성 검사
8. *
- RSA –
① 서버 : <공개키, 비밀키> 생성 및 JSP에 <공개키>전송
② 클라이언트 : JS에서 패스워드를 공개키로 암호화, 서버에 전송
③ 서버 : <비밀키>로 패스워드 복호화
- SHA-256 –
① 서버 : SHA-256을 위한 salt 생성 및 salt로 패스워드 암호화
② 서버 : Salt와 암호화된 패스워드를 저장
1
- 필요 라이브러리 –
• RSA (RSAutil.java, jsbn.js, prng4.js, rng.js, rsa.js)
• SHA-256 (SHA256util.java)
*키쌍 생성
*키 전송
*키 수신
16. * Ajax를 이용한 페이징 처리
- 클라이언트 Ajax –
① Page : 기본값을 1페이지로 ‘더보기+’클릭 시 페이지 수 1씩 증가
② listCount : 페이지 당 게시글 6개로 고정
③ page, listCount 서버에 전송
- 서버 –
① totalCount = SQL_COUNT(*)
② pageCount = 더보기+’ 형식의 특성상 1로 고정
③ totalPage = totalCount / listCount
나머지가 0이 아니라면 totalPage+1
page가 totalPage보다 커진다면, page=totalPage
④ startPage = ((page-1)/pageCount) * pageCount + 1;
⑤ endPage = stargPage + pageCount – 1;
⑥ startCount = (page-1) * listCount
⑦ endCount = page * listCount
⑧ SQL_LIMIT #{startCount} #{totalCount} 게시물 조회
⑨ totalPage, endPage, 조회된 게시물 클라이언트에 전송
1
1. 서버에 보일 페이지 번호 및 페이지 당 게시물 수 전송
17. 2
3
2. 페이징 처리에 필요한 정보를 ‘return_MyMovieList_Json.jsp’를 통해 Ajax 응답
3. 응답받은 정보로 리스트 구현
19. * Ajax를 이용한 페이징 처리
- 클라이언트 Ajax –
① Page : 기본값을 1페이지로 ‘더보기+’클릭 시 페이지 수 1씩 증가
② listCount : 페이지 당 댓글 6개로 고정
③ page, listCount 서버에 전송
- 서버 –
① totalCount = SQL_COUNT(*)
② pageCount = 10
③ totalPage = totalCount / listCount
- 나머지가 0이 아니라면, totalPage+1
- page가 totalPage보다 커진다면, page=totalPage
④ startPage = ((page-1)/pageCount) * pageCount + 1;
⑤ endPage = stargPage + pageCount – 1;
⑥ startCount = (page-1) * listCount
⑦ endCount = page * listCount
⑧ SQL_LIMIT #{startCount} #{totalCount} 게시물 조회
⑨ 페이징 정보 및 조회된 게시물 클라이언트에 전송