본문 바로가기

웹/JSP

[JSP] <JSP> Bean

Bean이란

  • 웹에서 한가지 기능을 담당하는 클래스이다.
  • 클래스는 객체를 의미한다.
  • 일종의 기능의 단위이다.
  • MVC에서 M이 될 수도 있고,  C가 될 수도있다.
  • JSP에서 로직 부분을 담당함으로 유지보수에 유리하다.

JSP페이지에서의 호출 방법

<jsp:useBean>

주의

  • Bean을 생성할 때는 패키지가 필요하다.
  • 패키지가 존재하지 않을 경우 웹에서 이용할 수 가 없다.
package calc;

public class CalcBean {

    private int num1;
       private int num2;
       private String op;
       private int result;

       public void calc() {

          if(op.equals("+")){

             result=num1+num2;

          } else{

             result=num1-num2;

          }

       }

       public int getNum1() {

          return num1;

       }

       public void setNum1(int num1) {

        this.num1 = num1;

       }

       public int getNum2() {

          return num2;

       }

       public void setNum2(int num2) {

          this.num2 = num2;

    }

       public String getOp() {

          return op;

       }

       public void setOp(String op) {

          this.op = op;

       }

       public int getResult() {

          return result;

       }

       public void setResult(int result) {

          this.result = result;

       }

}

JSP에서 Bean 사용하기

  • <jsp:useBean/> 에서 자바빈을 호출
  • <jsp:setProperty/>에서 각 변수에 값을 저장
    • *을 사용할 경우 jsp자체에서 값을 자동으로 짝지어 할당해준다.
  • <jsp:getProperty/>에서 값을 받아온다.
<%@ page language="java" contentType="text/html; charset=UTF-8" pageEncoding="UTF-8"%>
<jsp:useBean class="calc.CalcBean" id="cb" /> 
<%--
   new를 대신하는 JSP 문법
   calc.CalcBean cb=new calc.CalcBean();
   그래서 웹에서는 기본 생성자를 사용함!
--%>
<jsp:setProperty name="cb" property="*" />
<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title>두 번째 실습</title>
</head>
<body>
<% cb.calc(); %>

    <form method="POST">

        <input type="text" name="num1">

          <select name="op">

            <option>+</option>

             <option>-</option>

          </select>

          <input type="text" name="num2">

          <input type="submit" value="계산하기">

       </form>

    <hr>

       <h2>계산결과 : <jsp:getProperty name="cb" property="result" /></h2>

</body>
</html>

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

[JSP] <Scriptlet> 내장객체  (1) 2024.01.05
[JSP] <JSP> 에러페이지  (0) 2024.01.05
[JSP] <JSP> request  (0) 2024.01.04
[JAVA] <Servlet> 기초  (0) 2024.01.04
[JSP] <JavaScript> 이벤트 등록  (0) 2024.01.03