[Jsp] 자바빈을 사용한 회원가입
- Web/Jsp
- 2017. 10. 17.
자바빈이란?
자신이 사용하고싶은 데이터를 클래스화 시켜 그 클래스에 값을 넣어두고 활용하는 기법을 말합니다..
JavaBean 문법
<jsp:useBean/>
<jsp:useBean id="빈 이름" class="자바빈 클래스 명" scope="사용 범위/>
<jsp:setProperty/>
<jsp:setProperty name="빈 이름" property="속성명" value="설정할 속성 값"/>
전송받은 파라메타이름이 빈 객체의 속성명과 모두 같을 경우 문법
<jsp:setProperty name="빈 이름" property="*"/>
(개인적으로 자바빈을 사용할 때 가장 편리한 기능이라 생각합니다.)
자바빈을 실제로 어떻게 쓰는지 예제를 통해서 알아보도록 하겠습니다.
예제는 자바빈을 사용한 회원가입을 준비해왔습니다.
JavaBean 예제
BeanJava.java
public class BeanJava {
String id;
String pw;
String email;
String mynum;
String birth;
String favorit;
String content;
public String getId() {
return id;
}
public void setId(String id) {
this.id = id;
}
public String getPw() {
return pw;
}
public void setPw(String pw) {
this.pw = pw;
}
public String getEmail() {
return email;
}
public void setEmail(String email) {
this.email = email;
}
public String getMynum() {
return mynum;
}
public void setMynum(String mynum) {
this.mynum = mynum;
}
public String getBirth() {
return birth;
}
public void setBirth(String birth) {
this.birth = birth;
}
public String getFavorit() {
return favorit;
}
public void setFavorit(String favorit) {
this.favorit = favorit;
}
public String getContent() {
return content;
}
public void setContent(String content) {
this.content = content;
}
}
위와 같은 경로에 만들어주면 됩니다.
Join.jsp
<style type="text/css">
table,th,td{
border-style: solid;
border-color: #CC3D3D;
border-width: 1px;
border-collapse: collapse;
}
</style>
<form action="input.jsp" method="post">
<form action="MAILTO:wjdxo513@naver.com" method="post" enctype="text/plain"> //폼태그 액션에 MAILTO 경로를 써준다.
<table align="center" width="700pt" border="1" cellspacing="0" cellpadding="0"><tr>
<td colspan="2" align="center" bgcolor="red" height="40" style="color:white"><b>회원 기본 정보</b></td>
</tr>
<tr>
<td bgcolor="pink">아이디 :</td>
<td><input type="text"> 4~12자의 영문 대소문자와 숫자로만 입력</td>
</tr>
<tr>
<td bgcolor="pink" style="height: 24px;">비밀번호 :</td>
<td style="height: 24px;"><input type="password"> 4~12자의 영문 대소문자와 숫자로만 입력</td>
</tr>
<tr>
<td bgcolor="pink">비밀번호확인 :</td>
<td><input type="password"> 4~12자의 영문 대소문자와 숫자로만 입력</td>
</tr>
<tr>
<td bgcolor="pink">메일주소 :</td>
<td><input type="text"> 예)id@domain.com</td>
</tr>
<tr>
<td colspan="2" align="center" bgcolor="red" height="40" style="color:white"><b>개인 신상 정보</b></td>
</tr>
<tr>
<td bgcolor="pink">주민등록번호 :</td>
<td><input type="text">예)1234561234567</td>
</tr>
<tr>
<td bgcolor="pink">생일 :</td>
<td><input type="text">년
<select name="월">
<option value="1">1</option>
<option value="2">2</option>
<option value="3">3</option>
<option value="4">4</option>
<option value="5">5</option>
<option value="6">6</option>
<option value="7">7</option>
<option value="8">8</option>
<option value="9">9</option>
<option value="10">10</option>
<option value="11">11</option>
<option value="12">12</option>
</select>월
<select name="일">
<option value="1">1</option>
<option value="2">2</option>
<option value="3">3</option>
<option value="4">4</option>
<option value="5">5</option>
<option value="6">6</option>
<option value="7">7</option>
<option value="8">8</option>
<option value="9">9</option>
<option value="10">10</option>
<option value="11">11</option>
<option value="12">12</option>
<option value="13">13</option>
<option value="14">14</option>
<option value="15">15</option>
<option value="16">16</option>
<option value="17">17</option>
<option value="18">18</option>
<option value="19">19</option>
<option value="20">20</option>
<option value="21">21</option>
<option value="22">22</option>
<option value="23">23</option>
<option value="24">24</option>
<option value="25">25</option>
<option value="26">26</option>
<option value="27">27</option>
<option value="28">28</option>
<option value="29">29</option>
<option value="30">30</option>
<option value="31">31</option>
</select>일
</td>
</tr>
<tr>
<td bgcolor="pink">관심분야 :</td>
<td>
<input type="checkbox" name="like" value="computer">컴퓨터
<input type="checkbox" name="like" value="internet">인터넷
<input type="checkbox" name="like" value="trv">여행
<input type="checkbox" name="like" value="movie">영화감상
<input type="checkbox" name="like" value="music">음악감상
</td>
</tr>
<tr>
<td bgcolor="pink">자기소개 :</td>
<td><textarea cols="85" rows="10"></textarea></td>
</tr>
</table>
<br/>
<center>
<input type="submit" value="회원 가입">
<input type="reset" value="다시 입력">
</center>
</form>
회원가입 정보를 입력하는 join.jsp
input.jsp
<jsp:usebean id="beanjava" class="day5.BeanJava" scope="session">
<jsp:setproperty name="beanjava" property="*">
//위에 보이시는 코드 한줄만 써주면 앞선페이지에서 request로 받은 값이 자동으로 javabean에 들어가게됩니다.
<script language="javascript">
function start(){
alert("결과창 뽑기");
}
<input type="button" value="결과" onclick="location.href="output.jsp"">
실질적으로 자바빈에 값을 집어넣는 input.jsp
output.jsp
이름<jsp:getproperty name="beanjava" property="id"><br/>
비번<jsp:getproperty name="beanjava" property="pw"><br/>
이메일<jsp:getproperty name="beanjava" property="email"><br/>
주민<jsp:getproperty name="beanjava" property="mynum"><br/>
생일<jsp:getproperty name="beanjava" property="birth"><br/>
선호<jsp:getproperty name="beanjava" property="favorit"><br/>
내용<jsp:getproperty name="beanjava" property="content"><br/>
자바빈에 들어간 값을 확인하는 output.jsp
이렇게 소스를 붙여 넣고 실행을 해보면 join.jsp에서 회원가입을 한 정보를 자바빈에 담아서 output.jsp에 출력이 잘 될 것입니다.
'Web > Jsp' 카테고리의 다른 글
[Jsp] MVC 패턴 회원가입 및 로그인 (9) | 2017.11.28 |
---|---|
[Jsp] MVC 패턴이란 무엇인가? (Model1, Model2) (3) | 2017.11.27 |
[Jsp] 웹에서 파일 업로드하기 (0) | 2017.10.16 |
[Jsp] 이클립스로 오라클에 값 입력하고 출력하기(커넥션풀) (0) | 2017.10.13 |