빈 이란?
반복적인 작업을 효율적으로 하기 위해 빈을 사용 합니다.
빈이란? JAVA언어의 데이터(속성)와 기능(메소드)으로 이루어진 클래스 입니다.
jsp페이지를 만들고, 액션태그를 이용하여 빈을 사용 합니다. 그리고 빈의 내부 데이터를 처리 합니다.
빈 만들기
JAVA언어를 학습 하면서 데이터 객체를 많이 만들어본 경험이 있을 것 입니다. 데이터 객체에는 데이터가 있어 그에 해당하는 getter와 setter가 있습니다.
빈을 만든다는 것은 데이터 객체를 만들기 위한 클래스를 만드는 것 입니다.
빈 관련 액션 태그(useBean, setProperty, getProperty
액션태그 중에서 Bean관련한 태그가 있습니다. 주로 데이터를 업데이트하고, 얻어오는 역할을 합니다.
useBean
이미 만들어진 빈(데이터와 속성이 있는 클래스가 )있다면
jsp파일에서 특정 Bean을 사용한다고 명시할 때 사용된다.
<jsp:useBean id = "student" class = "com.javalec.ex.Student" scope="page">
해당페이지내에서만
JSP scope(유효 범위)
pageContext - 하나의 JSP 파일 영역, 페이지 범위
request - 하나의 서비스 요청과 관련된 범위
session - 하나의 브라우저 범위(브라우저 닫지 않은 이상 유지, 브라우저 닫으면 로그아웃)
application - 사이트 전체에서 사용되는 범위(로그인/로그아웃 시 사용, 사이트에서 로그아웃 누를 때까지 유지
setProperty
데이터 값을 설정 할 때 사용 한다.
<jsp:setProperty name = "student" property="name" value="홍길동"/>
빈이름 속성이름 속성 값
getProperty
데이터 값을 가져올 때 사용 한다.
<jsp:getProperty name = "student" property="name" />
빈 이름 속성이름
<%@ page language="java" contentType="text/html; charset=EUC-KR"
pageEncoding="EUC-KR"%>
<jsp:useBean id="student" class="com.javalec.ex.Student" scope="page" />
<!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>
<jsp:setProperty name="student" property="name" value="홍길동"/>
<jsp:setProperty name="student" property="age" value="13"/>
<jsp:setProperty name="student" property="grade" value="6"/>
<jsp:setProperty name="student" property="studentNum" value="7"/>
이름 : <jsp:getProperty name="student" property="name" /><br />
나이 : <jsp:getProperty name="student" property="age" /><br />
학년 : <jsp:getProperty name="student" property="grade" /><br />
번호 : <jsp:getProperty name="student" property="studentNum" /><br />
</body>
</html>
실행결과
이름 : 홍길동
나이 : 13
학년 : 6
번호 : 7