[JSP]자바빈즈 액션태그

2023. 12. 18. 15:17· 공부/JSP
목차
  1. 자바빈즈 액션 태그의 기능과 사용법
  2. 자바빈즈(Java Beans) 사용의 장점
  3. 자바 빈즈 작성 규칙
  4. useBean 액션 태그
  5. setProperty 액션 태그
  6. getProperty 액션태그
  7. 폼 태그를 이용하여 데이터 처리
반응형

자바빈즈 액션 태그의 기능과 사용법

  • 자바 빈즈(Java Beans)
    • 동적 콘텐츠 개발을 위해 자바 코드를 사용하여 자바 클래스로 로직을 작성하는 방법
    • JSP 페이지에서 화면을 표현하기 위한 계산식이나 자료의 처리를 담당하는 자바코드를 따로 분리(컴포넌트, 부품) 하여 작성하는 것
    • → 즉, 프로그램 모듈화를 위해 자바로 작성된 소프트웨어 컴포넌트
    • JSP 페이지가 HTML과 같이 쉽고 간단한 코드만으로 구성
  • 빈(Bean)은 클래스(Class)이다.
  • 자바 빈즈 변수 = 프로퍼티(속성)

자바빈즈(Java Beans) 사용의 장점

  • 내부적 데이터 처리와 공용화된 기능은 JSP 빈즈로 구현
  • 프로그램 중복을 줄이고 원활한 유지보수 가능
  • 한번 작성된 자바 빈즈를 여러 응용 프로그램에서 재사용 가능

Untitled.png

대체적으로 데이터베이스와 연동할 때 자바 빈즈를 사용함

  • 웹 사이트에서 데이터베이스를 사용하는 페이지가 많을 때 데이터베이스의 연결 부분은 따로 분리하여 깔끔하게 만듦

자바 빈즈 작성 규칙

  • 자바 클래스의 구성을 따르나 JSP 액션과 연동하기 위해 다음과 같은 필수 구성 요소를 가짐
  1. 모든 멤버 변수인 프로퍼티(Property, 속성)는 Private 접근 지정자로 설정
    • 외부 접근을 막음. Public으로 선언한 getter, setter 메서드 통해서 접근함
    • 입력되는 정보 검사 후 저장하도록 하기 위함
  2. Private로 선언된 변수의 값을 저장(set)하는 메서드 만듬 → setter 메서드
    • 메서드 이름 : setXxx, Xxx는 변수의 이름과 같으며 첫글자 대문자
  3. Private로 선언된 변수의 값을 가져오는(get) 메서드 만듬 → getter 메서드
    • 메서드 이름 : getXxx, Xxx는 변수의 이름과 같으며 첫글자 대문자
  4. setXxx() 메서드와 getXxx() 메서드는 public으로 선언
  5. 인자가 없는 생성자(기본 생성자)로 구성

→ 자바 빈즈안의 필드(변수)는 무조건 Private 필드에 접근하는 메서드는 Public 으로

 

<jsp:useBean id="myBean" class=ch04.SimpleBean" scope="page"></jsp:useBean>

 

id=myBean 의미 : Java에서 class를 변수에 지정하여 이름을 붙이는것과 같은 뜻

 

→ SimpleBean mybean = new mybean id값이 참조변수의 이름이 되는 것

useBean 액션 태그

  • JSP 페이지에서 자바빈즈를 사용하기 위해 실제 자바 클래스를 선언하고 초기화하는 태그
  • id 속성과 scope 속성을 바탕으로 자바빈즈의 객체를 검색하고, 객체가 발견되지 않으면 빈 객체 생성

Untitled.png

  • class 속성에 지정한 빈즈 클래스를 id 속성에 지정한 이름으로 사용할 수 있도록 해줌

Untitled.png

id = 자바빈즈를 식별하기 위한 이름 , 참조 변수명

scope = 빈즈 클래스 사용 범위(생존 범위). 기본 값 page, request: 다른 jsp 페이지의 요청에 담아서 보낼 동안 사용되어 진다.

Untitled.png

setProperty 액션 태그

  • 자바빈즈의 setter() 메서드에 접근하여 자바빈즈의 멤버 변수인 프로퍼티의 값을 저장하는 태그

Untitled.pngUntitled.pngUntitled.png

setProperty에서는 name 사용 !!

만약 class(자바빈즈)에서 setter와 getter를 규칙에 맞게 생성되어져 있으면 setProperty로 더 직관적으로 클래스의 필드값 변경가능

Untitled.png

getProperty 액션태그

  • useBean 액션 태그와 함께 자바빈즈의 getter() 메서드에 접근하여 자바빈즈의 멤버 변수인 프로퍼티의 값을 가져오는 태그

Untitled.pngUntitled.png

  • HTML로 화면을 구성하고 데이터 출력이 필요한 부분에 삽입

폼 태그를 이용하여 데이터 처리

Untitled.png

  • 위의 폼 태그가 있을 때 form action을 RegisterProcess.jsp로 지정한다.
    • RegisterProcess.jsp 에 id, pwd Property(속성 or 필드) 를 가진 클래스는 useBean으로 불러오고 value를 생략한 setProperty 를 사용하여 처리가
<jsp:useBean id="registerBean" class="ch" scope="page"/>
<jsp:setProperty name=”자바빈즈 식별이름” property=”id”/>
<jsp:setProperty name=”자바빈즈 식별이름” property=”pwd”/>


<jsp:getProperty name=”자바빈즈 식별이름” property=”id”/>
<jsp:getProperty name=”자바빈즈 식별이름” property=”pwd”/>
  • 만약 프로세스를 처리하는 JSP와 자바빈즈(클래스)의 프로퍼티의 이름이 같다면 “*” 문자를 이용하여 폼 태그를 통해 받은 데이터를 한번에 setter 할 수 있다.
  • <jsp:setProperty name="myBean" property=“*"/>

만약 요청 파라미터 이름과 자바빈즈의 프로퍼티 이름이 일치하지 않는 경우 → param 속성추가

Untitled.png

반응형
  1. 자바빈즈 액션 태그의 기능과 사용법
  2. 자바빈즈(Java Beans) 사용의 장점
  3. 자바 빈즈 작성 규칙
  4. useBean 액션 태그
  5. setProperty 액션 태그
  6. getProperty 액션태그
  7. 폼 태그를 이용하여 데이터 처리
'공부/JSP' 카테고리의 다른 글
  • [JSP]JDBC로 데이터베이스와 JSP연동
  • [JSP]파일 업로드
  • [JSP]서블릿과 웹 MVC
  • [JSP]세션
Future0_
Future0_
rm -rf /
Future0_
Luna Developer Blog
Future0_
전체
오늘
어제
  • 분류 전체보기 (112)
    • 프로그래밍 (4)
      • 알고리즘 (4)
    • 보안 (14)
      • Dreamhack (4)
      • Hackthebox (1)
      • Webhacking (9)
    • 프로젝트 (4)
    • 공부 (80)
      • Database (2)
      • Python (11)
      • System (4)
      • Java (13)
      • JSP (13)
      • Spring (11)
      • Kotlin (16)
      • 자료구조 (10)
      • 기계학습 (0)
    • Docker (4)
    • Github (2)
    • Tip (1)
    • 잡담 (2)

블로그 메뉴

  • 홈
  • 태그

공지사항

인기 글

태그

  • 코틀린기본문법
  • jsp
  • 보안
  • cs
  • 컴퓨터
  • api 통신
  • Android Studio
  • SpringBoot
  • 상속
  • 1.9.22
  • React
  • 키 해시
  • docker
  • dreamhack
  • ViewModel
  • android studio 삭제
  • Kotlin
  • 자바빈즈
  • shared preference
  • Database
  • native app
  • 자료구조
  • webhacking
  • 프로그래밍
  • spring
  • Computer science
  • Python
  • 알고리즘
  • Java
  • 디버깅키해시

최근 댓글

최근 글

hELLO · Designed By 정상우.v4.2.0
Future0_
[JSP]자바빈즈 액션태그
상단으로

티스토리툴바

단축키

내 블로그

내 블로그 - 관리자 홈 전환
Q
Q
새 글 쓰기
W
W

블로그 게시글

글 수정 (권한 있는 경우)
E
E
댓글 영역으로 이동
C
C

모든 영역

이 페이지의 URL 복사
S
S
맨 위로 이동
T
T
티스토리 홈 이동
H
H
단축키 안내
Shift + /
⇧ + /

* 단축키는 한글/영문 대소문자로 이용 가능하며, 티스토리 기본 도메인에서만 동작합니다.