JSP

JAVABEANS

H_eh 2022. 7. 12. 14:50

 

JAVABEANS
jsp 안의 많은 자바 코드들이 담당했던 일들을 독립적으로 처리하기 위한 부품과 같다

 

  • 자바빈
    • 정보덩어리, 데이터 저장소
    • 개별적으로 접근해서 사용하기 보다는 필요한 정보를 객체로 구성하는 멤버로 작성하여 한꺼번에 데이터에 접근해서 사용할 수 있다
    • 데이터 은닉화
      • 외부에서 데이터를 직접 다루면 데이터가 손상될 수 있어 이를 막기 위해서 나온 개념
    • 필드와 getter/setter 메소드를 하나의 쌍으로 갖는 특별한 클래스
    • 정보를 저장하는 변수는 pricate으로 선언
    • setXxx() 메소드와 getXxx() 메소드를 public으로 선언

 

  • jsp:useBean 
    • (클래스명)클래스의 (객체명)객체를 생성함
    • jsp 파일과 자바빈을 연결하는 (자바빈) 객체를 생성
    • scope  :  객체가 사용될 유효 영역 설정
    • requests로 넘어온 데이터를 자바빈즈와 매핑해주는 useBean
<jsp:useBean id="객체이름" class="패키지.클래스명" />

 

  • jsp:setProperty
    • 폼 양식에서 전달되는 매개 변수 값을 얻어와서 (객체명)객체의 프로퍼티 값으로 저장
    • 자바빈 객체에 저장하기 위해서 반드시 파라미터의 이름과 자바 빈 프로퍼티 이름이 동일해야한다
    • jsp 내용을 자바빈 클래스에 데이터를 매핑(넣어준다)
<jsp:setProperty property="*" name="객체이름"/>

 

  • jsp:getProperty
<jsp:getProperty property="파라미터명" name="객체이름"/>
더보기
<%@ page language="java" contentType="text/html; charset=UTF-8"
    pageEncoding="UTF-8"%>
<title>addMember</title>
<body bgcolor="aliceblue">
	<!-- html의 name 값과 자바빈의 필드값이 일치해야한다 -->
	<form action="readMember.jsp" method="post" >
		이름 : <input type="text" name="name"><br>
		아이디 : <input type="text" name="userid"><br>
		별명 : <input type="text" name="nickname"><br>
		비밀번호 : <input type="text" name="pwd"><br>
		이메일 : <input type="text" name="email"><br>
		전화번호 : <input type="text" name="phone"><br>
		
		<input type="submit" value="전송"><br>
		<input type="reset" value="다시입력"><br>
	</form>
</body>
<%
	request.setCharacterEncoding("UTF-8");
%>
<jsp:useBean id="myMember" class="co.bm.javabeans.MemberBean" >
	<jsp:setProperty property="*" name="myMember"/>
</jsp:useBean>
	
<!DOCTYPE html>
<html>
<head>
	<meta charset="UTF-8">
	<title>readMember</title>
</head>
<body>
	이름: <jsp:getProperty property="name" name="myMember"/><br>
	아이디: <jsp:getProperty property="userid" name="myMember"/><br>
	별명: <jsp:getProperty property="nickname" name="myMember"/><br>
	비밀번호: <jsp:getProperty property="pwd" name="myMember"/><br>
	이메일: <jsp:getProperty property="email" name="myMember"/><br>
	연락처: <jsp:getProperty property="phone" name="myMember"/>
</body>
</html>

 

더보기

회원가입 폼

<%@ page language="java" contentType="text/html; charset=UTF-8"
    pageEncoding="UTF-8"%>
<title>addStu</title>
<body>
	<center>
		<h2>회원 가입</h2>
		<form action="MemberJoinProc.jsp" method="post">
		<table width="500" border="1">
			<tr height="50">
				<td width="150" align="center">아이디</td>
				<td width="350" align="center"><input type="text" name="id"
                  size="40" placeholder="id넣으세요"></td>
            </tr>

            <tr height="50">
				<td width="150" align="center">패스워드</td>
				<td width="350" align="center"><input type="password"
                  name="pass" size="40" placeholder="비밀번호는 영문자만 넣어주세요"></td>
            </tr>

            <tr height="50">
				<td width="150" align="center">이메일</td>
				<td width="350" align="center"><input type="email"
                  name="email" size="40"></td>
            </tr>

            <tr height="50">
				<td width="150" align="center">전화번호</td>
				<td width="350" align="center"><input type="tel" name="tel"
                  size="40"></td>
            </tr>

            <tr height="50">
				<td width="150" align="center">주소</td>
				<td width="350" align="center"><input type="text"
                  name="addr" size="40"></td>
            </tr>

            <tr height="50">
				<td align="center" colspan="2"><input type="submit"
                  value="회원가입"></td>
            </tr>
		</table>
		</form>
	</center>
</body>
<title>MemberJoinProc</title>
<%
	request.setCharacterEncoding("UTF-8");
%>
<jsp:useBean id="sbean" class="co.bm.javabeans.StuBean">
	<jsp:setProperty property="*" name="sbean"/>
</jsp:useBean>
<body>
	<h3>비밀번호는 <jsp:getProperty property="pass" name="sbean"/></h3>
	<h3>이메일는 <jsp:getProperty property="email" name="sbean"/></h3>
	<h3>전화번호 <%=sbean.getTel() %></h3>
	<h3>주소는 <%=sbean.getAddr() %></h3>
</body>

 

728x90
728x90