액션태그
페이지 이동, 외부 파일을 불러오기 등 jsp 페이지 내에서 어떤 기능을 제공하는 태그
형식) <식별자:액션태그명>
액션태그 사용시 주석을 쓸 경우, <%-- --%> 를 사용한다
액션태그의 종류
include, forward, useBean , setProperty, getProperty
_본 포스팅에서는 include, forward 액션태그만 다룰 예정
include 액션태그
앞서 다룬 include지시어와 비슷한 기능을 한다
공통점: 외부의 파일의 내용을 불러와서 특정 위치에 넣어준다
차이점 : include 액션태그는 동적으로 내용을 변경/ include 지시어는 정적으로 문자열만 복사
include 지시어의 경우 내용을 수정하면 새로고침으로 수정된 내용을 반영할 수 없고, 다시 파일을 읽어들여야 된다
<jsp:include page="포함할 페이지명" flush="false" />
<~></~> => < ~ />
* flush="false/true" 의 의미
버퍼에 데이터가 다 쌓이면 방류하게 되는데
입출력의 경우, 화면에 출력하기전까지 데이터가 버퍼에 쌓인다
이때 지정한 페이지로 이동하는 등의 액션이 발생하면 이때 버퍼에 쌓인 지금까지 작업한 내용을
현재 브라우저에 전송하고 지정한 페이지로 이동할 것인가.(true)
혹은 쌓아놓은 버퍼를 유지하면서 지정한 페이지로 이동할 것인가(false)를 결정해주는 속성이다.
대부분 flush="false"의 속성으로 많이 사용한다
include 액션 태그 예제
form.jsp
include.jsp
sub.jsp
- 결과창
forward 액션태그
forward.jsp
move.jsp
<jsp:forward page='이동할 페이지명(확장자포함)'>
a.jsp
b.jsp
- 결과창
a.jsp로 페이지는 이동했지만 url창의 경로는 처음 요청받았던 move.jsp로 나와있다
다른 페이지에서 데이터를 공유하는 방법
request|session|application.setAttribute("키명",저장할값)
request|session|application.getAttribute("키명")
위의 forward예제에서 move.jsp를 move2.jsp로 변경하여 실행
move2.jsp
num변수, Date객체 데이터를 이동할 페이지에서도 사용가능하도록
요청 객체인 request에 담아 보낸다
서버의 메모리에 저장된다
* getParameter와 getAttribute는 비슷하여 헷갈릴 수 있는데,
getParameter의 경우, 입력받은 값을 매개변수를 통해 받아올 수 있고,
getAttribute의 경우, 메모리에 저장된 값을 받아올 수 있다
a.jsp
- 결과창
'JSP' 카테고리의 다른 글
[JSP]jsp 파일만으로 간단한 홈페이지 만들기 (0) | 2021.02.04 |
---|---|
[JSP]데이터 공유 영역 (page, request, session, application), xml 태그 규칙, 서블릿 url 매핑 경로 (0) | 2021.02.04 |
[JSP]지시어(page지시어, include지시어), JSP 내장객체, 순수서블릿과 응용서블릿의 차이점, sendRedirect / forward / location.href (0) | 2021.02.03 |
[JSP]JSP&Servlet 팝업창 띄우기 예제 (0) | 2021.02.03 |
[JSP]Servlet 개요, 라이프사이클, post, get, url 매핑, 동작원리( Jsp, Servlet, JavaScript ) (0) | 2021.02.02 |