카테고리 없음

[Java] JSP 액션태그

보겸삼촌 2021. 1. 28. 02:20

1. JSP 표준 액션 태그

미리 정해진 기능들을 JSP 스팩에 명시함으로써, 모든 컨테이너가 동일하게 구현하는 태그

 모든 JSP Container에서 기본으로 제공하고 있어서 기본 액션 태그라고도 함

 

 표준 액션 태그는 특별한 선언 없이 jsp 라는 접두어를 붙여 태그명만 명시하면 Container가 인식해서 수행

 

 쉽게 말하면, 페이지와 페이지 사이의 제어를 이동시킬 수 있고, 다른 페이지의 실행 결과를 현재의 페이지에 포함가능

 

 

 

  1.1. 표준 액션 태그 종류

 

    <jsp:forward>

      : servlet에서 RequestDispatcher 객체의 forward() 메소드 기능을 실행하며 다른 페이지로 이동할 때 사용하는 태그

<jsp:forward page="경로"/> or <jsp:forward page="<%= %>"/>

 

 

    ➁ <jsp:include>

      : servlet에서 RequestDispatchinclude메소드를 실행하며 다른 페이지를 현재 페이지에 포함할 때 사용하는 태그

<jsp:include page="경로"/> or <jsp:include page="<%= %>"/>

   이처럼 다른 페이지를 포함하는 방법은 include 지시자를 이용하는 방법이 있음.

 

   지시자를 이용하면 JSP 파일이 자바 소스로 변환될 때 지시자에서 지정한 페이지가 포함되지만, 소스가 포함된 후

  컴파일 되기 때문에 클래스 파일이 만들어짐

 

   그러나, 액션태그를 사용하면 실행될 때 동적으로 포함됨

 

 

    ➂ <jsp:useBean>

      : useBean태그는 new 명령문. , 새로운 객체를 생성하는 표준 액션 태그

      이는 JSP 자바빈즈를 사용 시에 객체를 생성하여 참조하기 위해 사용되며 자바빈 객체를 생성

 

       새로 생성할 클래스의 이름은 class 속성에 지정하며, 생성된 객체를 참조 하는 변수의 이름은 id 속성에 지정

  - id : 생성될 자바빈 객체(인스턴스) 이름을 명시
  - class : 객체가 생성될 자바빈 클래스를 기술(패키지명을 포함한 자바클래스)
  - scope : 자바빈 객체의 유효 범위로 자바빈 객체가 공유되는 범위 지정.
             생략 시 default : page (page, request, session, application)

 

    ➃ <jsp:body>

 

    <jsp:element>

 

    <jsp:fallback>

 

    <jsp:getProperty>

      : 자바빈 객체에서 저장된 property의 값을 얻어올 때 사용

<jsp:getProperty name="testBean" property="name"/>

 

  - name : 자바빈 객체의 이름 명시 (필수)
  - property : property 명 기술 (필수)

<jsp:useBean id="testBean" class="com.bean.testBean" scope="page"/>
<jsp:getProperty name="testBean" property="name"/>

     : useBean으로 생성한 testBeanname 속성을 가져옴

 

 

    ➇ <jsp:setProperty>

      : 생성된 자바빈 객체에 property의 값을 설정할 때 사용

<jsp:setProperty name="testBean" property="name" value="lee"/>

 

- name : 자바빈 객체의 이름 명시 (필수)
- property : property 명을 기술 (필수)
- value : property에 저장할 값을 기술

<jsp:useBean id="testBean" class="com.bean.testBean" scope="page">
	<jsp:setProperty name="testBean" property="name"/>
</jsp:useBean>

 

  위의 <jsp:setProperty name="testBean" property="name"/> 액션 태그는 자바빈 클래스의 setName() 메소드와 자동

 연동됨. , property name자바빈 클래스의 name property를 의미함

 

 

    ➈ <jsp:output>

    ➉ <jsp:param>

    ⑪ <jsp:plugin>

      : web Browser에서 java applet을 실행시킬 때 사용

 

    ⑫ <jsp:attribute>

    ⑬ <jsp:params>

 

 

  액션 태그는 XML 문법을 따르기 때문에 단독 태그의 경우에도 반드시 종료 태그를 포함해야 함

 

 

 

[ 사용 예시 링크 참조 ] https://opentutorials.org/module/3569/21296