JSP 문법 (액션 태그)
액션은 JSP 구성중하나이고 페이지 간 흐름을 제어한다.
액션태그에는 include, forward, beans가 있다
1 . include 액션
include 지시어와 같다고 생각했는데 이것은 다른 페이지를 import한다.
차이점은 실행지점에 부르고자하는 파일을 호출하고 결과를 포함시키는다.
기본형식
<jsp:include page="포함할 파일명"/>
ex)
aa.jsp
<jsp:include page="head.jsp">
<jsp:param name = "email" value= "ganadara@abc.net"/>
<jsp: param name = "tel" value= "123-123-1234"/>
</jsp:include>
head.jsp
<%= request.getParameter("email")%>
2. forward액션
include 액션과 비슷하지만 현재 페이지의 제어권을 완전히 다른페이지로 전달함.
<jsp:forward page="포워딩 파일명"/>
aa.jsp
<jsp:forward page="head.jsp">
<jsp:param name = "email" value= "ganadara@abc.net"/>
<jsp: param name = "tel" value= "123-123-1234"/>
</jsp:include>
head.jsp
<%= request.getParameter("email")%>
<--코드를 해석하자면 name은 변수의 이름, value는 매개변수의 값-->
* 자바빈즈란 ? 하나의 JSP에 포함되지않고 독립객체이다. (여러 JSP에서 사용가능)
그럼 왜 쓰냐? : 많은 파라미터를 빈즈 처리해서 사용하거나 값을 전달할수있어서 처리에 효율성이 좋고, 여러군데 사용가능해서 실용성이 좋다.
3. bean 액션
빈즈 컴포넌트와 상호작용을 지원한다.
기본형식
<jsp:useBean id=”변수명” class=”빈즈클래스명” />
<jsp:getProperty name=”변수명” property=”속성명” />
<jsp:setProperty name=”변수명” property=”속성명” />
액션 종류 | 속성 | 설명 |
useBean | id | 빈즈 클래스의 인스턴스 명으로 사용할 변수 |
class | 빈즈 클래스의 클래스명으로 패키지 경로를 포함 | |
setProperty | name | 빈즈 클래스의 인스턴스명으로 ID값에 설정했던 변수명 |
property | 속성값으로 빈즈클래스의 set속성이름 메소드와 매칭될 속성값. "*"를 지정하면 모든 set속성이름에 자동을 매칭 | |
getProperty | name | 빈즈클래스의 인스턴스명으로 ID값에 설정했던 변수명 |
property | 속성값으로 빈즈클래스의 get속성이름 매소드와 매칭될 속성값. |