[11] JSP에서 빈즈 테스트
[자바 기반에서 직접 객체 생성]
파일명 : /WebContent/testbeans/test02.jsp
##############################################################
<%@ page contentType="text/html; charset=utf-8" %>
<%@ page import="www.sungjuk.SungjukBean" %>
<%
SungjukBean dao = new SungjukBean();
out.println("dao: " + dao.hashCode());
int a = 10;
int b = 3;
%>
<!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=utf-8">
<title>빈즈를 사용한 경우</title>
</head>
<body>
<center>
<table width="300" border="1" align="center">
<tr>
<td width="100">연산</td>
<td width="200">결과</td>
</tr>
<tr>
<td>변수 a </td>
<td> <%=a%></td>
</tr>
<tr>
<td>변수 b </td>
<td> <%=b%></td>
</tr>
<tr>
<td>더하기</td>
<td> <%=dao.add(a, b)%></td>
</tr>
<tr>
<td>빼기</td>
<td> <%=dao.sub(a, b)%></td>
</tr>
<tr>
<td>곱하기</td>
<td> <%=dao.mul(a, b)%></td>
</tr>
<tr>
<td>나누기</td>
<td> <%=dao.div(a, b)%></td>
</tr>
<tr>
<td>나머지</td>
<td> <%=dao.mod(a, b)%></td>
</tr>
<tr>
<td>큰수</td>
<td> <%=dao.max(a, b)%></td>
</tr>
<tr>
<td>작은수</td>
<td> <%=dao.min(a, b)%></td>
</tr>
<tr>
<td>변수 a </td>
<td> <%=dao.chart(a)%></td>
</tr>
<tr>
<td>변수 b </td>
<td> <%=dao.chart(b)%></td>
</tr>
</table>
</center>
</body>
</html>
##############################################################
[JSP XML 태그 이용 생성]
- Scope (범위, 사용 범위, 빈즈의 활용 영역)
- jsp에서 자바 빈즈 사용시 빈즈의 수명을 지정.
- page : 하나의 jsp 페이지에서만 사용할 수 있으며, 페이지 이동을 하면 자동으로 소멸된다.
파일명 : /WebContent/testbeans/test03.jsp
###############################################################
<%@ page contentType="text/html; charset=utf-8" %>
<%@ page import="www.sungjuk.SungjukBean" %>
<jsp:useBean id="sungjukBean" class="www.sungjuk.SungjukBean" scope="page" />
<%
out.println("sungjukBean: " + sungjukBean.hashCode());
int a = 10;
int b = 3;
%>
<!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>빈즈를 사용한 경우</title>
</head>
<body>
<center>
<table width="300" border="1" align="center">
<tr>
<td width="100">연산</td>
<td width="300">결과</td>
</tr>
<tr>
<td>변수 a </td>
<td> <%=a%></td>
</tr>
<tr>
<td>변수 b </td>
<td> <%=b%></td>
</tr>
<tr>
<td>더하기</td>
<td> <%=sungjukBean.add(a, b)%></td>
</tr>
<tr>
<td>빼기</td>
<td> <%=sungjukBean.sub(a, b)%></td>
</tr>
<tr>
<td>곱하기</td>
<td> <%=sungjukBean.mul(a, b)%></td>
</tr>
<tr>
<td>나누기</td>
<td> <%=sungjukBean.div(a, b)%></td>
</tr>
<tr>
<td>나머지</td>
<td> <%=sungjukBean.mod(a, b)%></td>
</tr>
<tr>
<td>큰수</td>
<td> <%=sungjukBean.max(a, b)%></td>
</tr>
<tr>
<td>작은수</td>
<td> <%=sungjukBean.min(a, b)%></td>
</tr>
<tr>
<td>변수 a </td>
<td> <%=sungjukBean.chart(a)%></td>
</tr>
<tr>
<td>변수 b </td>
<td> <%=sungjukBean.chart(b)%></td>
</tr>
</table>
</center>
</body>
</html>
###############################################################
[문제]
----------------------------------------------------
파일명 : CalcBean.java
package www.sungjuk;
public class CalcBean {
public int abs(int su){
//절대값 구하기
}
public int fact(int su){
//팩토리얼값 구하기
}
}
----------------------------------------------------
파일명 : CalcBeanTest.java
package www.sungjuk;
public class SungjukBeanTest {
public static void main(String[] args) {
}
}
----------------------------------------------------
파일명 : /WebContent/testbeans/calc.jsp