본문 바로가기
코딩 공부/web & Java

[JSP] Java Bean

by 현장 2022. 10. 17.

자바 빈(Java Bean) 

특정한 정보(id, password, name, job)을 가지고 있는 클래스를 표현하는 하나의 규칙이며 데이터를 표현하기 위한 목적을 지니고 있다. 이 규칙을 지닌 클래스를 Java Bean이라고 한다.

  • 반드시 클래스는 패키지화 되어야 함
  • 멤버변수는 property(프로퍼티)라고 함
  • 멤버변수는 private로 지정하고, 외부접근을 위한 get, set 메소드를 정의해야 함
  • get, set 메소드는 public으로 지정

자바 빈 예시

public class User {
	private String u_id;
	private String u_pw;
	private String u_level;
	private String u_name;
	private String u_email;
	
	public String getU_id() {
		return u_id;
	}
	public void setU_id(String u_id) {
		this.u_id = u_id;
	}
	public String getU_pw() {
		return u_pw;
	}
	public void setU_pw(String u_pw) {
		this.u_pw = u_pw;
	}
	public String getU_level() {
		return u_level;
	}
	public void setU_level(String u_level) {
		this.u_level = u_level;
	}
	public String getU_name() {
		return u_name;
	}
	public void setU_name(String u_name) {
		this.u_name = u_name;
	}
	public String getU_email() {
		return u_email;
	}
	public void setU_email(String u_email) {
		this.u_email = u_email;
	}
	
	
}

빈 관련 액션 태그

1. useBean

<jsp:useBean id="빈 이름" class="클래스이름" scope="스코프 범위" />

<jsp:useBean id="user" class="kr.or.ex" scope="스코프 범위" /> 일경우

 java에서 객체 생성 시 변수명을 정의하는 것을 jsp에서는 id로 정의한다. (= User u = new User)

class에는 class가 있는 위치를 명시한다.

 

Scope

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

 

2. setProperty

<jsp:Property name="이름" property="속성" value="값" />

<jsp:Property name="user" property="u_id" value="id001" />일경우

user라고 정의한 빈 객체 속의 u_id이라는 속성에 id001를 넣어라는 의미이다. (= user.setU_id("id001")

 

3.  getProperty

<jsp:getProperty name="이름" property="속성" />

<jsp:getProperty name="user" property="u_id" />일경우

 user라는 빈 객체의 속성 중  u_id 속성을 가져오라는 의미이다. (= user.getU_id())

'코딩 공부 > web & Java' 카테고리의 다른 글

[Java] Servlet  (0) 2022.11.04
[Web] 브라우저 렌더링  (0) 2022.11.01
[Web] DAO, DTO, VO, Entity  (0) 2022.10.17
[JAVA] Wrapper Class  (0) 2022.10.11
[JAVA] 싱글톤  (0) 2022.10.11