유디의 공간정보·개발일기

9.0819_팀플 3일차, 정리 본문

JSP & Servlet

9.0819_팀플 3일차, 정리

55yudi 2021. 8. 22. 16:42

소프트웨어 에러잡기
- 시간을 많이 투자한다고 해서 에러가 잡히는 건 아니다.
- 일단 에러메시지를 경청(?)한다.
- 클라이언트인 웹브라우저에서 실행 시 오류인지,
  서버측 실행에서 오류가 발생한 건지,
  네트워크 오류인지 등등
- 디버깅도구
  (Debug As...로 실행하면 break point를 만날 때 실행이 거기에서 잠시 멈춘다)
  * 웹브라우저에서 콘솔창과 여러 도구들
  * 서버측
- 어디까지 실행되다가 오류가 발생한 것인지?
- 서버측으로 데이터는 요청은 된 것인지?


오후 3시 15분씩 팀별 발표 진행
발표시 구현시스템 시연할 것
발표자료에 팀원 모두의 교육 소감과 lessons leaned 필히 포함


오전
- 이전 버전 이클립스를 한 번 열었다 닫았더니 Enterprise버전이 사라져서 모든 jsp파일이 txt파일로 열리는 상황이 생김
  한 파일을 열 때마다 open as - jsp file로 하면 흑백에서 바뀌기는 하는데 모든 페이지가 그렇지 않다보니
  서버에서 잘 안먹히는 것 같았음
- 이전 버전 이클립스와 하위폴더를 지우고 최신버전(원래 썼던 것) 이클립스 exe가 담긴 폴더와
  eclipse-workspace폴더를 c:\ 바로 다음에 폴더 생성해서 넣고,
  톰캣 서버 지웠다가 다시 등록, build path와 web library 다시 추가, 
  properties에서 설정 여러 개 한 후, 이클립스 실행시키고 file-switch workspace-other로 이전 파일들 불러와서 재실행
  (그 뒤로 잘 되긴 하는데 jsp파일 아이콘에 에러표시가 다 붙어서 안떨어진다..ㅠㅠ)

- 서버 가동해서 웹브라우저 실행, 페이지 잘 구동하는지 확인
- Hottest 설명글 줄바꿈 정리하고 위에 3줄 볼드체로
- Company team소개 부분 글 수정

- result-view(-test)페이지에서 테이블 키우고 테이블 위아래로
  header랑 footer 사이에 간격을 줘서 띄울 수 있는지
- 영화예매창에서 버튼 중앙으로 가도록 하기

- lessons learned 느낀점 적기
- 자료 제출 전에 팀원들 lessons learned 취합해서 피피티에 반영

- 나한테 없는 파일 체크
- 업데이트 안된 파일 체크

- 업데이트하라고 팀원들에게 줄 코드
reservation.jsp
seat.jsp



----------------최종 코드 매커니즘--------------------
로그인화면
join.jsp )회원가입 - 회원가입 성공 - 다시 로그인 화면
login.jsp ) 로그인
login-check.jsp + ReservVO.java 의 클래스 안에 userId를 가져온 것 + 
moviephoto.jsp ) 영화 선택화면- 체크박스 - 예매하기 버튼
movie-action.jsp ) 상영날짜, 시간 선택 - 
movie-time-action.jsp ) 좌석예약(자동)
예약 목록 페이지에 내역 - reservation table에 정보 들어와서 저장됨

result.jsp ) 예약내역 조회버튼, 수정버튼, 삭제버튼
result-view.jsp ) 조회, action=logout-action.jsp로 넘김
  로그아웃 버튼을 누르면 세션 초기화를 하고 값을 지우고, 로그인 화면으로 forwarding함
result-modify.jsp ) 수정, 영화 예약 페이지로 돌아감
(userId만 계속 남아있고 동시에 그 전 정보는 DB에서 delete해줌)
result-delete.jsp ) 삭제, 아이디를 입력해서 예약취소하기 버튼을 누르고 삭제
로그아웃

 



과정 돌아보기
- 소스코드를 합치는 작업의 힘듦
  * 공통으로 소스코드 버전관리 도구
- 중복체크는 Ajax
  * 
- 리퀘스트가 살아있는 정도에 대해
- 데이터 구조 설계
  * 예약의 좌석 데이터 컬럼 데이터타입(A1, 1, A열 5줄)
  * 데이터를 삭제할 때 primary key(예약아이디)만 있으면 된다.
- 클래스 구조 설계
- 설계의 중요성
- 로직의 구성
- Onclick 속성의 배제
  * <form action="" onclick="myf()"> : 이렇게 쓰면 유지보수가 힘들어서 배제해야 함
  * <script>
        form 서브밋 이벤트 핸들러(함수)를 등록한다.
    </script>
  ? 폼서브밋 이벤트 핸들러
- 제어의 이동
  * MVC