Notice
Recent Posts
Recent Comments
Link
관리 메뉴

데브마우스

[JSP] 자바빈즈 액션 태그 정리 본문

JSP/JSP: 정리

[JSP] 자바빈즈 액션 태그 정리

데브마우스 2023. 12. 19. 16:29

자바빈즈란 무엇인가요?

자바빈즈는 동적 콘텐츠 개발을 위해 자바 코드를 사용하여 자바 클래스로 로직을 작성하는 방법입니다.

             
웹 브라우저 1. 요청 → .JSP 파일 2
자바빈즈 3
데이터 베이스
← 4.응답
             

웹 브라우저가 JSP를 요청할 때 자바빈즈의 작동 흐름은 아래와 같습니다.

  1. 웹 브라우저가 JSP에게 페이지 요청을 전송합니다.
  2. JSP 페이지와 자바빈즈가 통신합니다.
  3. 자바빈즈가 DB에 연결됩니다.
  4. JSP 페이지가 웹 브라우저에 응답하게 됩니다.

자바빈즈의 목적은 무엇인가요?

자바빈즈는 데이터 표현이 목적인 자바 클래스이며 기존의 자바 클래스를 작성하는 방법과 동일하게 작성합니다. 자바빈즈의 작성 규칙은 다음과 같습니다.

  1. 자바 클래스는 java.io.Serializable 인터페이스를 구현(implements)해야합니다.
    1. 기본 생성자는 반드시 적어두걸 추천합니다. 오버로딩한 생성자가 있을 경우 기본 생성자가 사라지기 때문에 습관적으로 기본 생성자는 반드시 적어두는걸 추천합니다.
  2. 인수가 없는 기본 생성자 ( 클래스이름() )가 반드시 있어야 합니다.
  3. 모든 멤버 변수인 프로퍼티의 접근제어자는 private로 작성되어야 합니다.
  4. 모든 프로퍼티 멤버 변수는 Getter/Setter() 메서드가 있어야합니다.

useBean 액션태그로 자바빈즈 사용하는 방법

<jsp:useBean id="자바빈즈 식별이름" class="자바빈즈 이름" scope="생명주기의 범위" />
속성 속성의 설명
id 자바빈즈를 식별하기 위한 이름입니다.
호출하기 위해 생성합니다.
class 패키지 이름을 포함한 자바빈즈 이름입니다.
scope 자바빈즈가 저장되는 영역을 설정합니다.
- page(기본 값):페이지 이동 시 소멸됩니다.
- request(1번 전달): 다음 페이지까지 유지됩니다.
- session(계속 유지):사이트 내부에서 유지되며 소멸시점을 알 수 없습니다. 클라이언트가 언제 세션연결을 해제할 때까지 유지됩니다.
- application(서버 유지): 서버 종료 전까지 유지됩니다.

 

setProperty 액션 태그

<jsp:setProperty name="자바빈즈 식별이름" property="프로퍼티 이름" value="값" param="값" />
속성 속성의 설명
name useBean 태그에 id 속성 값으로 작성된 자바빈즈를 구별하기 위한 이름입니다.
property 자바빈즈의 프로퍼티 이름입니다.
장점으로 만약 프로퍼티의 이름에 '*'를 넣으면 모든 요청 파라미터가 자바빈즈 프로퍼티의 setter() 메서드에 전달됩니다.
value 변경할 자바빈즈의 프로퍼티 값입니다. 만약 프로퍼티 값이 null이거나 존재하지 않는 요청 파라미터의 경우에는 setProperty 액션 태그가 무시됩니다.
주의할 점으로 param과 value를 동시에 모두 사용할 수 없습니다. 둘 중 하나만 사용이 가능합니다.
param 자바빈즈의 프로퍼티 값을 전달하는 요청 파라미터의 이름입니다.
주의할 점으로 param과 value를 동시에 모두 사용할 수 없습니다. 둘 중 하나만 사용이 가능합니다.

getProperty 액션 태그

<jsp:getProperty name="자바빈즈 식별이름" property="프로퍼티 이름" />
속성 속성의 설명
name useBean 태그에 id 속성 값으로 작성된 자바빈즈를 구별하기 위한 이름입니다.
property 자바빈즈의 프로퍼티 이름입니다.
장점으로 만약 프로퍼티의 이름에 '*'를 넣으면 모든 요청 파라미터가 자바빈즈 프로퍼티의 getter() 메서드에 전달됩니다.