jsp12

제로·2022년 12월 4일
0

JSP

목록 보기
11/30

페이지 모듈화 및 요청 흐름 처리

  1. 화면을 구성할 때는 여러가지 설정이 필요한 경우도 있고, 공통으로 처리하는 페이지가 필요할 때도 많다
    공통 처리 내용에 대하여 따로 jsp를 선언하고 활용한다면 보다 효과적으로 변경/수정/추가시 처리가 가능하다
    ex) 공통되는 화면처리, 공통되는 session 처리, 공통되는 java/js 변수 처리

  2. jsp는 외부페이지를 모듈화하여 포함되어 처리할 수 있다.
    jsp ==> java 라는 개념에 의해 두가지 방법으로 나뉜다.

    • 외부의 다른 컴파일된 파일을 포함시켜서 처리하는 방법
    • 포함되어서 하나의 컴파일로 파일을 처리하는 방법

    1) 독립된 java 파일을 호출하여 처리하는 경우
    <jsp:include> 액션 태그
    다른 객체이기에 데이터를 전달할 때도 요청값 형식으로 전달한다.
    ex) 파일1 ==> 따로 컴파일 ==> 컴파일된 파일2를 호출
         파일2 ==> 따로 컴파일

    2) 현재 페이지에 포함시켜 하나의 jsp로 만들어 처리하는 경우
    <include 디렉티브>
    같은 파일로 생각해서 변수를(위에서 아래로) 선언해서 사용한다.
    ex) 파일1 ==> 함께 하나의 파일로 컴파일
         파일2

  3. 그외 request의 forward 개념으로 현재 페이지를 호출하지만 요청값을 가지고
    특정한 페이지로 이동처리하는 jsp의 액션태그인 jsp:forward가 있다.
    현재 페이지가 가지고 있는 request, response와 함께 있는 데이터를 가지고 다음 페이지에 전송된다.
    ex) 요청값, 쿠키값 등...

jsp:include 액션태그

  1. 다른 jsp 페이지의 실행 결과를 현재 위치에 삽입
  2. 기본형식
    1) <jsp:include page="포함할 페이지" flush="true">
    2) page 속성 : 포함할 외부 jsp 페이지
    3) flush 속성 : 지정한 jsp 페이지를 실행하기 전에 출력 버퍼를 flush할지의 여부를 지정
    true는 출력 버퍼를 flush하고 false이면 하지 않는다.

    ps) 버퍼 개념 - 화면을 구현하는데 어느 정도의 데이터가 있는 패킷(데이터 단위)이 있어야 표현이 된다. 네트워크 속도가 좋지 않을 때, 현재 화면을 조금씩 로딩하는 것보다 모든 내용을 다 받아서 로딩하는것이 효율적이라면 버퍼라는 메모리를 써서 한꺼번에 화면을 구성하는 개념을 말한다.
  3. <jsp:param>액션 태그
    1) 신규 파라미터를 추가하는데 사용
    <jsp:param name="파라미터이름" value="값">
    상단에 선언해야 한글 파라미터값을 전달할 수 있다.
    ==> <% request.setCharacterEncoding("utf-8"); %>
    2) 해당 페이지 안에서는
    request.getParameter("파라미터이름")
## main.jsp
 <h2>include 액션 페이지 호출</h2>
 <div style="border:1px solid green">
		<jsp:include page="a02_subPage.jsp">
			<jsp:param value="사과" name="name"/>
			<jsp:param value="3000" name="price"/>
			<jsp:param value="2" name="cnt"/>
		</jsp:include>
 </div>
    
## a02_subPage.jsp
  <h2><%=request.getParameter("name")%></h2>
  <h2><%=request.getParameter("price") %></h2>
  <h2><%=request.getParameter("cnt")%></h2>

profile
아자아자 화이팅

0개의 댓글