[JSP] JSP 빈즈

    JSP 빈즈

    JSP와 연동을 위해 만들어진 자바 컴포넌트

    Bean 액션을 통해 JSP에서 손쉽게 연동

    데이터베이스 연동이나 뷰 데이터 교환에 사용된다.

     

    빈즈 개요

    자바 클래스

    멤버 변수와 getter, setter 메서드로 구성됨

    특정 기능을 수행하는 별도의 메서드를 가질 수 있음.

    JSP 모델2에서는 뷰 컴포넌트로만 활용이 권장된다.

     

     

    빈즈 클래스 구성

    빈즈 클래스도 자바클래스이므로 기본적으로는 자바 클래스 규격을 따른다.

     

     

    getter 메서드

    package Test;
    
    public class BeanTest
    {
    
    	private String name = "Mollang";
    
    	
    	public String getName()
    	{
    		return name;
    	}
    
    	public void setName(String name)
    	{
    		this.name = name;
    	}
    	
    }
    
    <%@ page language="java" contentType="text/html; charset=UTF-8"
    	pageEncoding="UTF-8"%>
    
    <jsp:useBean id="beantest" class="Test.BeanTest" scope="page" />
    <%
    	request.setCharacterEncoding("UTF-8");
    %>
    <!DOCTYPE html>
    <html>
    <head>
    <meta charset="UTF-8">
    <title>Insert title here</title>
    </head>
    <body>
    <b>자바빈 사용 예제</b>
    <h3><%=beantest.getName()%></h3>
    <h3><jsp:getProperty property="name" name="beantest"/></h3>
    </body>
    </html>
    

    setter 메서드

    <%@ page language="java" contentType="text/html; charset=UTF-8"
    	pageEncoding="UTF-8"%>
    
    <jsp:useBean id="beantest" class="Test.BeanTest" scope="page" />
    
    
    <jsp:setProperty name="beantest" property="name" value="Beatman"/>
    
    <%--
    	request.setCharacterEncoding("UTF-8");
    
    	//beantest.setName("Beantman");
    --%>
    <!DOCTYPE html>
    <html>
    <head>
    <meta charset="UTF-8">
    <title>Insert title here</title>
    </head>
    <body>
    <b>자바빈 사용 예제</b>
    <h3><%=beantest.getName()%></h3>
    <h3><jsp:getProperty property="name" name="beantest"/></h3>
    </body>
    </html>
    

    <jsp:setProperty name="beantest" property="name" value="Beatman" /> 으로 결과값을 바꾸었다.

    결과값이 Beantman이 나오는 것을 확일 할 수 있다.

     

    이와 비슷하게

    beantest.setName("Beantman");

    Java문으로 똑같이 변경 할 수 있다.

    반응형

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

    [JSP] WEB.XML은 무엇일까?  (0) 2021.05.13
    JSTL, JSP를 사용하는 사람이라면 알아야 할 것  (2) 2021.05.02
    [JSP] Bean  (0) 2020.08.26
    [JSP] 지시어  (0) 2020.08.26
    [JSP] 주석 사용하기  (0) 2020.08.26

    댓글

    Designed by JB FACTORY