MemberUpdateForm.jsp
<%@page import="model.MemberBean"%>
<%@page import="model.MemberDAO"%>
<%@ page language="java" contentType="text/html; charset=UTF-8"
pageEncoding="UTF-8"%>
<!DOCTYPE html>
<html>
<head>
<jsp:include page="Header.jsp" />
</head>
<body>
<!-- 1.데이터 베이스에서 한회원의 정보를 가져옴 2. table태그를 이용하며 화면에 회원의 정보를 출력 -->
<%
String id =request.getParameter("id"); //memberlist id 를 받아줌
MemberDAO mdao =new MemberDAO();
MemberBean mbean = mdao.oneSelectMember(id); //해당하는 id의 화원정보를 리턴
%>
<div class="container-fluid">
<div class="navbar-header">
<a class="navbar-brand" href="#">Macaronics.net</a>
</div>
</div>
<div class="container">
<div class="row">
<div class="col-sm-12">
<div class="col-sm-2"></div>
<div class="col-sm-9">
<h2 class="text-center">회원 정보 수정하기</h2>
<form action="MemberUpdateProc.jsp" method="post">
<table class="table table-striped">
<tr>
<td>아이디</td>
<td><%= mbean.getId() %></td>
</tr>
<tr>
<td>이메일</td>
<td>
<input type="email" value="<%= mbean.getEmail() %>" name="email" class="form-control">
</td>
</tr>
<tr>
<td>전화</td>
<td>
<input type="tel" value="<%= mbean.getTel() %>" name="tel" class="form-control">
</td>
</tr>
<tr>
<td>패스워드</td>
<td>
<input type="password" value="<%= mbean.getPass1() %>" name="pass1" class="form-control">
</td>
</tr>
<tr>
<td colspan="2" class="text-center">
<input type="hidden" name="id" value="<%= mbean.getId() %>">
<input type="submit" value="회원 수정하기" class="btn btn-success">
<button type="button" class="btn btn-warning" onclick="location.href='MemberList.jsp'">회원 전체 보기</button>
</td>
</tr>
</table>
</form>
</div>
</div> <!-- col-sm-12 -->
</div><!-- row -->
</div> <!-- container end-->
</body>
</html>
MemberUpdateProc.jsp
<%@page import="model.MemberBean"%>
<%@page import="model.MemberDAO"%>
<%@ page language="java" contentType="text/html; charset=UTF-8"
pageEncoding="UTF-8"%>
<!DOCTYPE html>
<html>
<head>
<jsp:include page="Header.jsp" />
</head>
<body>
<%
request.setCharacterEncoding("UTF-8");
%>
<jsp:useBean id="mbean" class="model.MemberBean">
<jsp:setProperty name="mbean" property="*" />
</jsp:useBean>
<%
String id= request.getParameter("id");
MemberDAO mdao=new MemberDAO();
//스트링타입으로 저장되어있는 패스워드를 가져옴(데이터베이스에서 가져온 pass 값이 저장)
String pass=mdao.getPass(id);
//수정하기위해서 작성한 패스워드값과 기존 데이터 베이스에서 가져온 패스워드값을 비교
if(mbean.getPass1().equals(pass)){//기본 패스와 데이터베으스패스가 같다면 member 테이블 수정
//MemberDao 클래스의 회원수정 메소드를 호출
mdao.updateMember(mbean);
response.sendRedirect("MemberList.jsp");
}else{
%>
<script type="text/javascript">
alert("패스워드가 맞지 않습니다. 다시 확인해 주세요.");
history.go(-1);
</script>
<%
}
%>
</body>
</html>
class MemberDAO
//한회원의 정보를 수정하는 메소드
public void updateMember(MemberBean mbean){
getCon();
try{
//쿼리 준비
String sql ="update member set email = ? , tel=? where id=?";
//쿼리실행 객체 선언
pstmt=con.prepareStatement(sql);
//?에 값을 맴핑
pstmt.setString(1, mbean.getEmail());
pstmt.setString(2, mbean.getTel());
pstmt.setString(3, mbean.getId());
//쿼리 실행
pstmt.executeUpdate();
}catch(Exception e){
e.printStackTrace();
}finally{
//자원 반납
try{
if(pstmt!=null) pstmt.close();
if(con!=null)con.close();
}catch(Exception e){
e.printStackTrace();
}
}
}
//한 회원을 삭제하는 메소드 작성
public void deleteMember(String id){
getCon();
try{
//쿼리준비
String sql ="delete from member where id=?";
//쿼리실행 객체 선언
pstmt=con.prepareStatement(sql);
//?에 값을 맵핑
pstmt.setString(1, id);
//쿼리실행
pstmt.executeUpdate();
}catch(Exception e){
e.printStackTrace();
}finally{
//자원 반납
try{
if(pstmt!=null) pstmt.close();
if(con!=null)con.close();
}catch(Exception e){
e.printStackTrace();
}
}
}
MemberDeleteForm.jsp
<%@page import="model.MemberBean"%>
<%@page import="model.MemberDAO"%>
<%@ page language="java" contentType="text/html; charset=UTF-8"
pageEncoding="UTF-8"%>
<!DOCTYPE html>
<html>
<head>
<jsp:include page="Header.jsp" />
</head>
<body>
<div class="container-fluid">
<div class="navbar-header">
<a class="navbar-brand" href="#">Macaronics.net</a>
</div>
</div>
<div class="container">
<div class="row">
<div class="col-sm-12">
<div class="col-sm-2"></div>
<div class="col-sm-9">
<h2 class="text-center">회원 정보 삭제하기</h2>
<form action="MemberDeleteProc.jsp" method="post">
<table class="table table-striped">
<tr>
<td>아이디</td>
<td><%= request.getParameter("id") %></td>
</tr>
<tr>
<td>패스워드</td>
<td>
<input type="password" name="pass1" class="form-control">
</td>
</tr>
<tr>
<td colspan="2" class="text-center">
<input type="hidden" name="id" value="<%= request.getParameter("id") %>">
<input type="submit" value="회원 삭제하기" class="btn btn-success">
<button type="button" class="btn btn-warning" onclick="location.href='MemberList.jsp'">회원 전체 보기</button>
</td>
</tr>
</table>
</form>
</div>
</div> <!-- col-sm-12 -->
</div><!-- row -->
</div> <!-- container end-->
</body>
</html>
MemberDeleteProc.jsp
<%@page import="model.MemberBean"%>
<%@page import="model.MemberDAO"%>
<%@ page language="java" contentType="text/html; charset=UTF-8"
pageEncoding="UTF-8"%>
<!DOCTYPE html>
<html>
<head>
<jsp:include page="Header.jsp" />
</head>
<body>
<%
request.setCharacterEncoding("UTF-8");
%>
<jsp:useBean id="mbean" class="model.MemberBean">
<jsp:setProperty name="mbean" property="*" />
</jsp:useBean>
<%
MemberDAO mdao=new MemberDAO();
//스트링타입으로 저장되어있는 패스워드를 가져옴(데이터베이스에서 가져온 pass 값이 저장)
String pass=mdao.getPass(mbean.getId());
//수정하기위해서 작성한 패스워드값과 기존 데이터 베이스에서 가져온 패스워드값을 비교
if(mbean.getPass1().equals(pass)){//기본 패스와 데이터베으스패스가 같다면 member 테이블 수정
//MemberDao 클래스의 회원수정 메소드를 호출
mdao.deleteMember(mbean.getId());
response.sendRedirect("MemberList.jsp");
}else{
%>
<script type="text/javascript">
alert("패스워드가 맞지 않습니다. 다시 확인해 주세요.");
history.go(-1);
</script>
<%
}
%>
</body>
</html>
동영상 강좌와 다르게 모바일 적용이 가능한 반응형 부트스트랩을 사용하였다.
여기서는 jsp 를 배우는 강좌 이기 때문에 html 적 요소에는 비중있게 생각 하지 않아도 될 것이다.
소스 : https://github.com/braverokmc79/jsp_sin
유튜브 동영상 출처 :
강사 : 신형섭(잭임연구원)
저작권 : (주)소프트캠퍼스 http://www.softcampus.co.kr 더많은 무료 강의는 사이트에서 확인하실수 있습니다.
















댓글 ( 4)
댓글 남기기