관리 메뉴

클라이언트/ 서버/ 엔지니어 "게임 개발자"를 향한 매일의 공부일지

[쇼핑몰 홈페이지 제작] 관리자 페이지 1 - 전체적인 흐름 분석하기 1 : 관리자 로그인을 위한 페이지 제작 본문

웹 · 앱 개발/JSP & Servlet

[쇼핑몰 홈페이지 제작] 관리자 페이지 1 - 전체적인 흐름 분석하기 1 : 관리자 로그인을 위한 페이지 제작

huenuri 2024. 12. 26. 17:44

오늘은 아침에 쇼핑몰 홈페이지를 제작하는 관리자 페이지를 만들려고 한다. 이 단원만 학습하면 이제 JSP로 쇼핑몰 홈피이지를 제작하는 프로젝트가 끝나게 된다. 책의 부록으로 3개의 Chapter로 이루어져 있는데 이제 거의 끝나간다.

여기까지 오다니 스스로가 대견스럽다. 

관리자 페이지에서는 상품 관리, 주문 관리, 회원 관리, 고객이 올린 질문에 대한 답변을 다는 등 다양한 관리를 하게 된다. 이번 장에서는 쇼핑몰 관리를 위한 관리자 페이지를 작성해 보도록 하겠다. 


 

 

 

 

 

전반적인 흐름 분석하기

관리자 페이지로 들어가기 위해서는 가장 먼저 관리자 인증 처리를 해야 한다. 그래서 관리자 페이지의 첫 시작은 관리자인지를 확인하기 위해 아이디와 비밀번호를 입력받도록 하는 로그인 페이지부터 시작한다.


 

 

 

▼ 관리자 로그인 인증 화면

 

관리자인 경우 로그인에 성공하고 상품 관리, 주문 관리, 회원 관리, Q&A 게시판 관리 등의 기능을 제공합니다. 

 

 

 

 

▼ 상품 관리 

 

 

 

 

▼ 주문 관리

 

 

 

▼ 회원 관리

 

 

 

▼ Q&A 게시판 관리

 

 

 

 

관리자로 로그인하기 위한 관리자 로그인 페이지로 이동하기 위해서 이전에 작성했던 header.jsp 페이지의 일부를 수정해서 관리자 페이지로 이동하는 링크를 추가한다.

 

 

 

 

 

관리자 로그인 페이지로 이동하는 “ADMIN”을 클릭하면 "NonageServlet?command=admin_login_form" 요청이 발생한다. 이 요청을 받아 처리하는 액션을 만들어 보겠다. 관리자 페이지에서 발생하는 요청을 처리하는 Action 클래스는 
사용자와는 별도로 “com.nonage.admin.controller.action” 패키지에 만든다.


 

 

 

 

 

[직접해보세요] 관리자 로그인 페이지로 이동하기 위한 액션 클래스

 

관리자를 위한 페이지는 사용자 페이지와는 별도로 admin 폴더에 추가하도록 하겠다. admin 폴더를 만든 후에 main.jsp 페이지를 이 폴더에 추가한다. 


 

 

 

 

[직접 해보기] 관리자 로그인을 위한 JSP 페이지


 

 

 

 

[직접 해보기] 커맨드 패턴으로 작업 처리를 위한 명령 처리 클래스 
ActionFactory 수정하기

 

로그인 처리를 위해서 관리자 정보를 담고 있는 worker 테이블을 조회해야 하기 때문에 DAO 클래스를 만들어야 한다. 관리자 인증을 위한 DAO를 만들겠다.

 


 

 

 

 

[직접 해보기] 관리자 인증을 위한 DAO 클래스 만들기

 

18: 전달인자로 준 아이디와 일치하는 행이 존재하는 관리자 인증을 위한 메서드이다. 아이디 존재하지 않으면 -1을 아이디 존재하지만 비밀번호가 불일치하면 0을, 아이디와 비밀번호 모두 일치하면 1을 결과값으로 리턴한다. 
19: 아이디를 검색 조건으로 주어서 비밀 번호를 얻어온다. 
33: 디비에 저장된 비밀번호를 얻어와 dbPwd 변수에 대입한다.
34: 디비의 비밀번호와 입력한 비밀번호가 일치하는지 여부를 살펴보고 비밀번호마저도 일치하여 result에 1을 저장한다. 

 

관리자 로그인 페이지에서 아이디와 비밀번호를 입력한 후 [업무 로그인] 버튼을 클릭하면 “NonageServlet?command= admin_login”이 요청된다. 로그인 인증 처리를 위한 액션 클래스를 만들겠다.


 

 

 

 

[직접 해보기] 관리자 로그인 인증 처리를 위한 액션 클래스


 

 

 

[직접 해보기] 커맨드 패턴으로 작업 처리를 위한 명령 처리 클래스 
ActionFactory 수정하기

 

더 이상 로그인한 상태를 유지하지 않으려면 화면 우측의 로그아웃 버튼을 클릭합니다. 그러면 “NonageServlet?command=admin_logout” 요청이 발생한다. 이 요청을 처리하는 액션 클래스는 다음과 같다. 


 

 

 

[직접 해보기] 관리자 로그인 인증 처리를 위한 액션 클래스


 

 

 

[직접 해보기] 커맨드 패턴으로 작업 처리를 위한 명령 처리 클래스 
ActionFactory 수정하기


 

 

 

 

학습을 마치고

여기까지 공부하는데 한참의 시간이 걸렸다. 원래 아침까지 마치려고 했지만 다른 일이 있어 오후 늦게사 시작해 본다. 오늘 안에 다 학습을 마칠지 모르겠지만 하는 데까지 하려고 한다.

관리자 페이지를 만드는 작업을 진행 중이다.