마케팅스프린트
[ GitHub ]

[ jungyijun@naver.com ]


  • Category
    • 마케팅 자동화
    • old posting
      • ChatGPT
      • Java
      • MySQL
      • JSP
      • Spring Framework
      • Node.js
Total
Today
Yesterday
hELLO · Designed By 정상우.
old posting/JSP

[JSP] 자바 빈(bean)

2021. 3. 2. 21:08

자바 빈(beean) : 정보의 덩어리, 즉 데이터 저장소(데이터 객체)

  • 데이터를 저장하기 위한 필드와 데이터를 컨트롤하는 getter와 setter 메소드를 하나의 쌍으로 가지고 있는 클래스
  • getter와 setter 메소드는 자바빈의 필드에 데이터를 저장하고 조회하는 작업을 한다.

자바 빈 만들기

  1. 패키지 선언
    • ex) com.test.Ex.클래스이름(bean 클래스명)
  2. 필드 선언
    • ex) private String name; // 이름을 저장할 필드 선언
  3. getter와 setter 메소드 정의 (Property 방식)

Property

: private 필드를 외부에서 접근하기 위해서 공개형 접근제어자 public으로 메소드를 정의해 놓고 이를 통해서 간접적으로 필드에 접근하는 방식이다.

  • 필드형태로 기술하고 간접적으로 메소드를 호출하는 것

자바 빈과 관련된 액션 태그

  • <jsp:useBean> → 자바 빈을 생성
  • <jsp:getProperty> → 자바 빈에서 정보를 얻어온다.
  • <jsp:setProperty> → 자바 빈에 정보를 저장한다.

<jsp:useBean> 기본 형식

<jsp:useBean class="클래스 풀 네임" id="빈 이름" [scope="범위(생략가능)"/>

 

<jsp:getProperty> 형식

<jsp:getProperty name="빈 이름" property="property 이름"/>

  • 회원의 이름을 얻기 위해서 getName() 호출하는 것과 같다.

<jsp:setProperty> 형식

<jsp:setProperty name="빈 이름" property="proprty 이름" value="값"/>

 

자바 빈의 영역(Scope) : 자바 빈의 영역은 총 4개의 영역이 존재한다.

  • page(default) : 현재 페이지의 범위에만 한정, 페이지 처리가 끝나면 유효하지 않는다.
  • request : request의 생명주기는 요청을 받고 요청처리를 완료하는 시점이다. 따라서 빈의 Scope는 requeest의 생명주기와 같다.
  • session : 세션의 생명주기는 설정된 유효시간이다. 따라서 빈의 Scope는 세션의 유효시간 동안이다.
  • application : 웹사이트가 실행되는 동안 빈의 Scope이다.

request Scope 사용하는 3가지 방법

  1. forward 액션 : 페이지를 이동시킨다. 이동 후 페이지와 이동 전의 페이지는 request를 공유한다.
  2. response.sendRedirect("test.jsp");
    • forward 방식과의 차이점은 새로운 request를 발생시킨다.
    • 새로운 요청을 발생시키기 때문에 페이지를 이동시킨 이후에 로직을 계속 수행한다.
  3. Javascript의 location.href="test.jsp";
    • 지정된 url로 이동시킨다.
    • href 이후로도 계속 로직을 수행한다.
    • sendRedirect()와 비슷하다.
    • 로직을 수행하지 않도록 하려면 return;을 해야한다.

 

  • 빈(Bean)
    • DAO(Data Access Object)
      • 데이터 접근을 목적으로하는 객체
    • DTO(Data Transfer Object)
      • 데이터가 포함된 객체를 다른 시스템으로 전달하는 역할의 객체
저작자표시 (새창열림)
'old posting/JSP' 카테고리의 다른 글
  • [JSP]커넥션 풀(Connection Pool)
  • [JSP] Statement와 PreparedStatment 그리고 ResultSet
  • [JSP] 웹어플리케이션에서의 예외처리란
  • [JSP] 세션 (Session) 그리고 세션(Session)과 쿠키(Cookie)의 차이점
마케팅스프린트
마케팅스프린트
쿠팡, 스마트스토어 자동화 솔루션

티스토리툴바