본문 바로가기

Wanna be a Programmer/Servlet & JSP

Servlet & JSP day11 - 회원 정보 프로그램(로그인한 상태에서 정보수정<DB연동>)

 

ModifyForm.java

☞ package : member.servlet

☞ url-pattern : /modifyForm

☞ session scope에 binding된 MemberDTO 객체가 존재하는지 조회하여 객체가 존재하면 로그인 되어있는 것으로 간주하고 로그인 된 경우에만 정보를 수정할 수 있다. 리다이렉트 방식을 이용해서 modify_form.jsp 페이지를 출력한다. 만약 로그인이 되어 있지않다면 디스패치 방식으로 로그인이 필요하다는 메세지를 전송하고 로그인 페이지로 이동한다.

 

소스보기

 

modify_form.jsp

☞ folder : WebContent/res

해당 페이지에서는 id와 마일리지를 제외한 비밀번호, 이름, 주민번호를 변경할 수 있도록 페이지를 작성한다.

 

소스보기

 

 

ModifyMemberServlet.java

☞ package : member.servlet

☞ url-pattern : /modifyMember

☞ modify_form.jsp에 작성한 페이지를 바탕으로 session scope에 MemberDTO 객체가 존재하는지 조회하여 존재하지 않으면 디스패치 방식으로 로그인하라는 메세지를 보내고 로그인 페이지로 이동한다. 그리고 객체가 존재하는 경우 modify_form에 수정한 데이터(비밀번호, 이름, 주민번호)를 데이터베이스에 저장한다. 그리고 수정한 데이터를 MemberDTO객체를 Binding하여 디스패치 방식으로 member_detail.jsp(결과적으로 Modify_success.jsp는 member_detail.jsp와 동일함) 페이지로 이동하여 결과를 출력한다. 그리고 Exception이 발생하면 에러메세지와 함께 error.jsp로 이동한다.

 

소스보기

 

Modify_success.jsp

☞ folder : WebContent/res

☞ session scope에 공유된 dto객체를 통해 수정 결과를 출력한다. 실제로 member_detail.jsp과 역할이 중복되므로 Modify_success.jsp페이지는 사용하지 않는다.

 

소스보기