상세 컨텐츠

본문 제목

자바 빈(JAVA Bean)

WebProgramming/JSP

by ChrisMare 2018. 10. 20. 13:30

본문

빈(Bean) ?

반복적인 작업을 효율적으로 하기 위해 빈을 사용하며,

JAVA 언어의 데이터(속성)와 기능(메소드)으로 이루어진 클래스를 말한다.

JSP에서는 속성과 메소드를 가진 클래스를 Bean 이라고 한다.


사용방법

  1. 속성과 메소드가 있는 빈 클래스(데이터 클래스)를 만든다.
  2. jsp 페이지를 만들어서 액션태그를 이용하여 데이터 클래스를 사용한다. (빈의 내부 데이터를 처리한다.)


빈(데이터 클래스) 생성

빈을 만든다는 것은 데이터 객체를 만들기 위해 클래스를 만드는 것이다.

데이터 객체에는 데이터가 있어 그에 해당하는 getter 와 setter 가 있다.


빈 관련 액션 태그 (useBean, setProperty, getProperty) 사용

액션 태그 중에서 Bean 관련한 태그가 있으며, 주로 데이터를 업데이트하고, 얻어오는 역할을 한다.


useBean

특정 Bean을 사용한다고 명시(정의) 할 때 사용.

1
<jsp:useBean id="빈 이름(member)" class="클래스이름(com.jsplec.ex.Member)" scope="스코프 범위(page, request, session, application)" />
cs


java -> Member member = new Member(); 와 같다.  java에서 객체 생성 시 변수명을 정의하는 것을 jsp에서는 id로 정의한다.

class >> 실제 클래스가 위치한 곳을 명시


Scope

  • page : 생성된 페이지 내에서만 사용 가능.
  • request : 요청된 페이지 내에서만 사용 가능.
  • session : 웹브라우저의 생명주기와 동일하게 사용 가능.
  • application : 웹 어플리케이션 생명주기와 동일하게 사용 가능.


setProperty

생성한 빈 객체에 데이터 값을 설정 할 때 사용. ( java의 setter 기능)

1
<jsp:Property name="member" property="name" value="ChrisMare" />
cs


<jsp:Property name="member" property="name" value="ChrisMare" />

member라고 정의한 빈 객체 속의 name이라는 속성에 ChrisMare를 넣어라는 의미이다.

java로 가정하면 member.setName("ChrisMare"); 와 동일하다.


getProperty

데이터 값을 가져올 때 사용. ( java의 getter 기능)

1
<jsp:getProperty name="member" property="name" />
cs


<jsp:getProperty name="member" property="name" />

member라는 빈 객체의 속성 중 name이라는 값을 가져오는 의미이다.

java로 가정하면 member.getName(); 과 동일하다.


ex JAVABean )


1. 빈 클래스 ( 데이터 클래스 생성 )

com.jsplec.ex.Member

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
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
package com.jsplec.ex;
 
public class Member {
 
    private String id;
    private String pw;
    private String name;
    private String age;
    
    public Member() {
        
    }
 
    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 getName() {
        return name;
    }
 
    public void setName(String name) {
        this.name = name;
    }
 
    public String getAge() {
        return age;
    }
 
    public void setAge(String age) {
        this.age = age;
    }
    
    
    
}
 
cs


2. jsp에서 Bean 사용

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
<%@ page language="java" contentType="text/html; charset=EUC-KR"
    pageEncoding="EUC-KR"%>
<!-- 사용할 빈 정의  -->
<jsp:useBean id="member" class="com.jsplec.ex.Member" scope="page"/
<!DOCTYPE html>
<html>
<head>
<meta charset="EUC-KR">
<title>jspBeans</title>
</head>
<body>
<h1>JSP Beans 이용한 페이지</h1>
<hr>
 <!-- 정의한 빈으로 접근하여 해당 빈의 해당 속성으로 값 넣는다.  -->
<jsp:setProperty name="member" property="id" value="ChrisMare"/>
<jsp:setProperty name="member" property="pw" value="1234"/>
<jsp:setProperty name="member" property="name" value="홍길동"/>
<jsp:setProperty name="member" property="age" value="25"/>

 <!-- 정의한 빈으로 접근하여 해당속성 값을 가져온다.  -->
id : <jsp:getProperty property="id" name="member"/><br/>
pw : <jsp:getProperty property="id" name="member"/><br/>
name : <jsp:getProperty property="id" name="member"/><br/>
age : <jsp:getProperty property="id" name="member"/>
 
</body>
</html>
cs



결과)



'WebProgramming > JSP' 카테고리의 다른 글

간단한 회원가입 및 회원정보 수정  (0) 2018.10.24
JDBC 연동 후 DB 테스트  (0) 2018.10.22
JSP 에러 종류  (0) 2018.10.19
예외 페이지  (0) 2018.10.19
세션(session)  (0) 2018.10.19

관련글 더보기

댓글 영역