BackEnd/WEB

JDBC 미니프로젝트 2일차

Leo.K 2022. 5. 5. 18:48

전체적인 기능은 사용자가 할 수 있는 기능(UserDao)과 관리자가 수행하는 기능(AdminDao)으로 구분했습니다. 

UserDao(Select)

  • 조회기능(Select)
    • selectReserve(reserveJumin) -> 사용자가 입력한 주민번호와 동일한 주민번호가 저장된 예약정보를 불러온다.
      • 주민번호의 입력형식을 정규식으로 검사합니다. 
      • 주민번호가 예약리스트에 존재한다면 예약 정보를 보여주고, 아니면 다시 입력하도록 합니다.
      • rooms_userOnly_view사용
    • selectUserList() -> 사용자가 선택할 수 있도록 현재 예약되지 않은 객실 리스트를 조회한다.
      • rooms_user_view 사용

AdminDao(Select, Insert, Update, Delete)

  • 조회기능
    • selectAdminListALL()  ->  관리자가 조회할 수 있는 정보. 모든 객실에 대해 예약자의 정보가 함께 나온다.
      • rooms_admin_view사용
    • selectAdminList() -> 관리자가 조회할 수 있는 정보. 예약된 객실에 대해서만 예약자의 정보가 나온다. 비교용
      • rooms_admin_view사용 (where조건절 is not null을 사용해 데이터를 필터링 한다.)
  • 삽입기능
    • insert(adminVo vo) -> 사용자가 예약을 시도하는 경우 사용자의 정보를 받아서 reservation테이블에 삽입
  • 수정기능
    • update(int roomNoBefore, int roomNoAfter) - > 이전에 예약한 객실과, 새로 예약할 객실을 인자로 받아서 reservation테이블의 데이터를 수정합니다. 이때 원본 테이블을 수정했기때문에, 원본테이블로 만든 뷰는 자동으로 수정됩니다. 
    • 이미 예약된 객실로 변경하려는 경우 변경 내용을 수용하지 않고 다시 입력하도록 합니다.
  • 삭제기능
    • delete(int roomNo) -> reservation테이블의 기본키인 roomno를 where조건절을 사용해서 삭제한다.

 

뷰 내용 

rooms_admin_view

rooms_user_view

rooms_userOnly_view(주민번호가 일치하는 레코드만 조회가능)

ERD

 

'BackEnd > WEB' 카테고리의 다른 글

JSP_국비_DAY48  (0) 2022.05.09
JSP_국비_DAY47  (0) 2022.05.06
JSP_국비_DAY46  (0) 2022.05.04
국비_DAY45  (0) 2022.05.03
국비_DAY44  (0) 2022.05.02