안녕하세요.
오늘은 jsp 에서 자바 빈(bean) 을 사용하는 방법에 대해 알아보겠습니다.
자바 빈(java bean) 은 일반적으로 jsp 페이지는 눈에 보이는 view 페이지로 볼 수 있습니다.
이러한 view 페이지는 디자이너가 관여하는 부분으로 jsp 페이지에 프로그래머의 코드가 함께 들어가게 된다면 페이지 코드가 매우 복잡해 질수가 있습니다.
그래서 디자인 부분과 내부 로직부분을 나누어 좀 더 효율적이고 재사용성을 높일수 있는 방법중 하나입니다.
그럼 간단한 자바 빈(java bean) 사용법을 알아보겠습니다.
빈을 테스트하기위한 jsp 페이지 하나와 빈 클래스가 필요합니다.
이클립스의 다이나믹 웹 프로젝트 안에 src 부분에 빈클래스가 들어가고 웹컨텐트 안에 jsp 페이지 하나를 만들어줍시다.
BeanTest 클래스에는 빈을 사용하기위한 형식이 있습니다.
빈에는 맴버변수와 맴버변수의 setter와 getter로 이루어져 있습니다.
맴버변수들의 접근제어는 private 로 구성되어야하며 각 맴버변수들의 getter와 setter는 직접 타이핑하지 않고 자동완성기능을 사용하여 만들어 주세요.
이렇게 만들어진 bean 클래스입니다.
package test;
public class BeanTest {
private String name;
private String name2;
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
public String getName2() {
return name2;
}
public void setName2(String name2) {
this.name2 = name2;
}
}
빈이 만들어 졌으면 jsp 페이지에서 빈에 접근하는 법을 알아 보겠습니다.
<%@ page language="java" contentType="text/html; charset=EUC-KR"
pageEncoding="EUC-KR"%>
<jsp:useBean id="beantest" class="test.BeanTest" scope="page"/>
<jsp:setProperty name="beantest" property="name2" value="property사용하기"/>
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=EUC-KR">
<title>Insert title here</title>
</head>
<body>
<b>자바빈 사용 예</b>
<%beantest.setName("setName 사용하기"); %>
<h3><%=beantest.getName() %></h3>
<h3><jsp:getProperty name="beantest" property="name2"/>
</body>
</html>
jsp 페이지 내에서 bean 에 접근하는 방법에는 크게 두가지가 있습니다.
<% %> 자바코드로 직접 setter 와 getter 로 값을 넣고 가져오는 방법이 있고.
setProperty 와 getProperty를 사용하여 bean 의 값을 사용하는 방법이 있습니다.
어떤 방법이 정답이라는건 없지만 jsp 를 사용하는만큼 좀 더 jsp 적인 문법을 사용하는것도 좋아보입니다.
'Web' 카테고리의 다른 글
[Web] 한줄짜리코드 - 코드 경량화 (minify) (0) | 2020.05.25 |
---|---|
[Jsp]커넥션풀(Connection Pool) (2) | 2017.09.07 |
[Jsp]jsp와 오라클db 연동 (0) | 2017.09.06 |