[정보처리산업기사 과정평가형 - 실기] 회원 정보 가져오기

반응형

회원 수정하기1 < 회원 정보 가져오기>


 

문제를 보시면 아시겠지만, 회원가입 화면과 매우 흡사합니다.

따라서 직접 만드시지 마시고 회원가입창을 그대로 복사하시길 바랍니다.

 

저는 이를 update.jsp로 만들었습니다.

 

 

이제 회원번호를 누를경우, 정보를 불러오도록 합니다. 벌써 눈치 채신분도 계실겁니다.

기존에 만든 Select만 조금 다듬으면 되는 것을 말입니다.

 

DAO 만들기

//회원 정보 가져오기
	public String joinSelectOne(HttpServletRequest request, HttpServletResponse response)
	{
		try
		{
			
			//*을 활용하여 모두 출력할 수 있지만, 컬럼을 확실하게 구분하기 위해 컬럼을 표시하였다.
			String sql = "select CUSTNO, CUSTNAME, PHONE, ADDRESS, JOINDATE, GRADE, CITY from member_tbl_02 where custno = ?";
			
			pstmt = con.prepareStatement(sql);
			
			
			String num = request.getParameter("num");
			//조회를 하기 위해서 ResultSet 하기 전에 가져온다.
			pstmt.setInt(1, Integer.parseInt(num));
			
			rs = pstmt.executeQuery();
			
			
			Member member = new Member();
			
			//검색된 개수만큼 반복문이 돌아간다.
			if(rs.next()) {
				//Member객체 하나를 생성한다.
				
				int custno = rs.getInt(1);
				System.out.println(custno);
				String name = rs.getString(2);
				String phone = rs.getString(3);
				String address = rs.getString(4);
				
				//date타입을 불러올 경우, 년월일시분초 로 가져온다. 여기서 년월일은 총 yyyy-mm-dd 이므로 10자리까지만 가져오면 된다.
				String date = rs.getString(5).substring(0,10);
				
				String grade = rs.getString(6);
				
				String city = rs.getString(7);
				
				//위에 가져온 것을 Member타입으로 모두 넣는다.
				//Member의 객체 num은 String 타입이고, custno는 int타입이다. 따라서 int에서 string으로 형변환이 필요하다.
				member.setNum(Integer.toString(custno));
				member.setName(name);
				member.setTel(phone);
				member.setAddress(address);
				member.setJoinDate(date);
				member.setGrade(grade);
				member.setCity(city);
				
			}
			

			//list의 결과값을 list에 담는다.
			request.setAttribute("member", member);
			
			
			
		}
		catch(Exception e)
		{
			e.printStackTrace();
		}
		finally
		{
			try
			{
				if(rs != null)
					rs.close();
				if(pstmt != null)
					pstmt.close();
				if(con != null)
					con.close();
			}
			catch(Exception e)
			{
				e.printStackTrace();
			}
		}
		
		return "template.jsp";
	}

이미 만들어진 SELECT문이 있으므로, List만 제외하고 sql문만 변경하면 작업이 끝났습니다.

 

 

controller

마찬가지로 컨트롤러도 이와 같이 추가 작업을 진행합니다.

 

 

joinList.jsp 수정

그 후에 JoinList.jsp에서 a링크를 걸어서 joinSelectOne작동되도록 설정을 주면됩니다.

 

 

update.jsp

<%@ page language="java" contentType="text/html; charset=UTF-8"
	pageEncoding="UTF-8"%>
<%@ page import="MemberBean.Member" %>
<%
	request.setCharacterEncoding("UTF-8");

	Member member = (Member) request.getAttribute("member");
%>
<!DOCTYPE html>
<html>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">

<head>
<title>Hi</title>
<script language="javascript">
	
	//유효성 검사 하기
	function joinChk()
	{
		//회원 성명
		if(document.join.name.value =="")
		{
			alert('회원성명을 입력해주세요.');
			document.join.name.focus();
			return false;
		}
		//회원 전화
		if(document.join.tel.value =="")
		{
			alert('회원전화를 입력해주세요.');
			document.join.tel.focus();
			return false;
		}
		//회원 주소
		if(document.join.address.value =="")
		{
			alert('회원주소를 입력해주세요.');
			document.join.address.focus();
			return false;
		}
		//가입 일자
		if(document.join.joindate.value =="")
		{
			alert('가입일자를 입력해주세요.');
			document.join.joindate.focus();
			return false;
		}
		//고객등급
		if(document.join.grade.value =="")
		{
			alert('고객등급을 입력해주세요.');
			document.join.grade.focus();
			return false;
		}
		//도시코드
		if(document.join.city.value =="")
		{
			alert('도시번호를 입력해주세요.');
			document.join.city.focus();
			return false;
		}
		
		alert('회원등록이 완료되었습니다.!');
		document.join.submit();
	}

</script>
</head>
<body>
	<center>
		<h1>홈쇼핑 회원 등록</h1>
		<form name="join" action="joinAction.me" method="post">
			<table border="1">
				<tr>
					<td>회원번호(자동발생)</td>
					<td><input type="text" name="num" value="<%=member.getNum()%>"></td>
				</tr>
				<tr>
					<td>회원성명</td>
					<td><input type="text" name="name" value="<%=member.getName()%>"></td>
				</tr>
				<tr>
					<td>회원전화</td>
					<td><input type="text" name="tel" value="<%=member.getTel()%>"></td>
				</tr>
				<tr>
					<td>회원주소</td>
					<td><input type="text" name="address" value="<%=member.getAddress()%>"></td>
				</tr>
				<tr>
					<td>가입일자</td>
					<td><input type="text" name="joindate" value="<%=member.getJoinDate()%>"></td>
				</tr>
				<tr>
					<td>고객등급</td>
					<td><input type="text" name="grade" value="<%=member.getGrade()%>"></td>
				</tr>
				<tr>
					<td>도시코드</td>
					<td><input type="text" name="city" value="<%=member.getCity()%>"></td>
				</tr>
				<tr>
					<td colspan="2"><center><input type="button" value="등록" onclick="joinChk()"> <input
						type="submit" formaction="joinSelectAll.me" value="조회"></center></td>
				</tr>
			</table>
		</form>
	</center>
</body>
</html>

결과값이 출력될 수 있도록 각 value에다가 member를 연결시키도록 합니다.

 

이렇게 한다면 member가 등록되는 것을 확인 할 수 있습니다.

 

앞으로의 작업은 기존의 자료에서 복사붙어넣기 작업으로 진행되며, 따라서 이 구간부터는 java와 jsp의 이해도에 따라

속도차이가 크게 달라질 수 있는 구간입니다.

 

※아직 수정버튼은 진행하지 않았으므로, 등록버튼 누르게 될 경우 회원가입으로 진행됩니다.~

 

 

 

 

전체 목록


[정보처리산업기사 과정평가형] 시험보기 앞서

[정보처리산업기사 과정평가형] 0. 만드려는 모습

[정보처리산업 과정평가형 - 실기] DB 만들기

[정보처리산업 과정평가형 - 실기]JSP 화면 만들기

[정보처리산업 과정평가형 - 실기] Java 만들기

[정보처리산업기사 과정평가형 - 실기] DAO 만들기

[정보처리산업기사 과정평가형 - 실기] 회원가입 만들기

[정보처리산업기사 과정평가형 - 실기] 회원가입 만들기2

[정보처리산업기사 과정평가형 - 실기] 회원가입 만들기3

[정보처리산업기사 과정평가형 - 실기] 회원 목록 만들기

[정보처리산업기사 과정평가형 - 실기] 회원 정보 가져오기

[정보처리산업기사 과정평가형 - 실기] 회원 정보 수정하기

[정보처리산업기사 과정평가형 - 실기] 매출 표현하기

[정보처리산업기사 과정평가형 - 실기] 코드 가져가기


 

반응형

댓글

Designed by JB FACTORY