Day54 - [JSP]회원탈퇴 구현하기
2021. 4. 30. 18:24ㆍJSP 공부
이전 글과 이어집니다.
이번에는 회원탈퇴를 만들어 볼 겁니다.
회원탈퇴 구현하기
이번에도 먼저, 흐름을 생각해 봅시다.
로그인 -> 마이페이지 -> 회원탈퇴
순으로 진행이 되겠죠?
회원탈퇴는, 데이터베이스에 저장된 데이터를 삭제 해주기만 하면 되서 간단 합니다.
이전 글에서, 여기까지 쭉 보셨다면 아래와 같은 화면을 구현한 것을 보셨을 겁니다.
여기서 회원탈퇴를 누르면, 데이터베이스에 저장된 데이터를 delete 해주면 됩니다.
파일명 : delete_ok.jsp
<%@page import="java.sql.DriverManager"%>
<%@page import="java.sql.PreparedStatement"%>
<%@page import="java.sql.Connection"%>
<%@ page language="java" contentType="text/html; charset=UTF-8"
pageEncoding="UTF-8"%>
<%
// 1. id값은 세션에서 얻습니다.
String id = (String)session.getAttribute("user_id");
String url = "jdbc:oracle:thin:@localhost:1521/XEPDB1";
String uid = "JSP";
String upw = "JSP";
Connection conn = null;
PreparedStatement pstmt = null;
String sql = "delete from members where id = ?";
try{
// 드라이버 호출
Class.forName("oracle.jdbc.driver.OracleDriver");
// conn 생성
conn = DriverManager.getConnection(url, uid, upw);
// pstmt 생성
pstmt = conn.prepareStatement(sql);
pstmt.setString(1, id);
// sql 실행
int result = pstmt.executeUpdate();
if(result == 1){ // 성공
session.invalidate(); // 세션에 정보삭제
response.sendRedirect("login.jsp");
} else{ // 실패
response.sendRedirect("login_welcome.jsp");
}
} catch(Exception e){
e.printStackTrace();
response.sendRedirect("login_welcome.jsp");
} finally{
try{
if(conn != null) conn.close();
if(pstmt != null) pstmt.close();
} catch(Exception e){
e.printStackTrace();
}
}
%>
회원탈퇴는 굉장히 간단하죠?
이렇게 회원탈퇴까지 알아 보았는데요, 여기까지 코드를 쭉 보면, 데이터베이스에 연결할 때마다 중복되는 코드도 많고 많이 복잡해지죠?
그래서, 클래스의 메서드로 만들어 주는게 좋습니다.
회원가입, 로그인, 정보수정, 회원탈퇴 페이지를 전부 구현 했다면, 클래스로 만드는 건 쉬우니까 스스로 한번 해보시기 바랍니다.
고생하셨습니다.
'JSP 공부' 카테고리의 다른 글
Day55 - [JSP]MVC1 전체적인 컴포넌트 설계 (0) | 2021.05.03 |
---|---|
Day55 - [JSP]DAO클래스와 VO클래스 (0) | 2021.05.03 |
Day54 - [JSP]정보수정 페이지 만들기 (0) | 2021.04.30 |
Day 54 - [JSP]로그인 페이지 만들기 (1) | 2021.04.30 |
Day53 - [JSP]회원가입 페이지 만들기 (4) | 2021.04.29 |