Rylah's Study & Daily Life
10. Java Bean 본문
1. JavaBean
- JSP 페이지의 로직 부분을 분리해서 코드를 재사용함으로써 프로그램의 효율을 높이는 것이 목적
- 모듈(Module)화가 대세인 현 프로그래밍에서 한 번 잘 작성한 코드를 재사용하면서 작성 기간이 단축되고, 이미 실사용중인 코드를 사용하므로 코드의 안정성이 보장되어 유지보수에도 좋다.
- 자바빈은 자바로 작성되어진 컴포넌트들을 일반적으로 일컫는 말로, 자바는 프로그램 기본 단위가 클래스이고, 자바빈은 클래스들로 이루어진 복합적인 구조이다.
2. JavaBean 만들기 : JavaBean Class
a. JavaBean Class
- Declaration
|
1
|
public class DbDataLogin{ }
|
cs |
b. Setter, Getter
- Declaration
|
1
2
3
|
public void setId(String id) {
this.id = id.trim();
}
|
cs |
|
1
2
3
|
public String getId() {
return this.id;
}
|
cs |
3. JavaBean, useBean, Action Tag(jsp:useBean)
- 객체 생성
|
1
|
<jsp:useBean id="beanName" class="javaBeanClassName" scope="area" />
|
cs |
- Set Property Value
|
1
|
<jsp:setProperty name="beanName" property="propertyName" value="propertyValue" />
|
cs |
- Get Property Value
|
1
|
<jsp:getProperty name="beanName" property="propertyName" />
|
cs |
1. 자바빈은 JSP에서 어떤 목적으로 사용되는가?
2. 다음 조건에서 주어진 대로 자바빈을 작성하시오.
| 자바빈의 접근 제어자는 public으로 선언하고 클래스명은 ExBean으로 지정한다. ExBean 클래스는 ex.ch10 패키지에 속한다. ExBean 클래스는 접근제어자를 private를 갖는 3개의 프로퍼티를 가지고 있다. - String 타입의 id 프로퍼티 - String 타입은 passwd 프로퍼티 - int 타입의 number 프로퍼티 |
|
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
|
package ex.ch10;
public class ExBean {
private String id;
private String passwd;
private int number;
public String getId() {
return id;
}
public void setId(String id) {
this.id = id;
}
public String getPasswd() {
return passwd;
}
public void setPasswd(String passwd) {
this.passwd = passwd;
}
public int getNumber() {
return number;
}
public void setNumber(int number) {
this.number = number;
}
}
|
cs |
3. 아이디, 패스워드 좋아하는 숫자를 입력받아 자바빈을 사용해서 프로퍼티 값을 저장하고 저장한 값을 화면에 표시하기 위한 프로그램이다.
problem10_03Form.jsp, problem10_03Pro.jsp가 주어진다. 자바빈은 ExBean.java를 사용한다.
|
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
|
<%@ page language="java" contentType="text/html; charset=UTF-8"
pageEncoding="UTF-8"%>
<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title>Problem 10-03 Form</title>
</head>
<body>
<h2>좋아하는 숫자를 입력하세요</h2>
<form method="post" action="problem10_03Pro.jsp">
아이디 : <input type="text" name="id"> <br>
패스워드 : <input type="password" name="passwd"> <br>
좋아하는 숫자 : <input type="text" name="number"> <br>
<input type="submit" value="입력완료">
</form>
</body>
</html>
|
cs |
|
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
|
<%@ page language="java" contentType="text/html; charset=UTF-8"
pageEncoding="UTF-8"%>
<% request.setCharacterEncoding("UTF-8"); %>
<jsp:useBean id="ExBean" class="ex.ch10.ExBean">
<jsp:setProperty name="ExBean" property="id"/>
<jsp:setProperty name="ExBean" property="passwd"/>
<jsp:setProperty name="ExBean" property="number"/>
</jsp:useBean>
<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title>problem10_03Pro.jsp</title>
</head>
<body>
<h2>입력 받은 정보 표시</h2>
아이디 : <jsp:getProperty name="ExBean" property="id"/><br>
패스워드 : <jsp:getProperty name="ExBean" property="passwd"/><br>
좋아하는 숫자 : <jsp:getProperty name="ExBean" property="number"/><br>
</body>
</html>
|
cs |


'Web Study > JSP' 카테고리의 다른 글
| 11. JSP, DataBase (2) - Basic Query (0) | 2022.03.20 |
|---|---|
| 11. JSP, DataBase (1) - MySQL (0) | 2022.03.20 |
| 09. JSP Page Error (0) | 2022.03.20 |
| 08. JSP Page Action Tag (0) | 2022.03.19 |
| 07. JSP Page Implicit Object (0) | 2022.03.19 |