Notice
Recent Posts
Recent Comments
Link
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | 5 | ||
6 | 7 | 8 | 9 | 10 | 11 | 12 |
13 | 14 | 15 | 16 | 17 | 18 | 19 |
20 | 21 | 22 | 23 | 24 | 25 | 26 |
27 | 28 | 29 | 30 | 31 |
Tags
- IntelliJ
- Python
- DBMS
- mysql
- oracle
- 오블완
- spring
- github
- 넥사크로
- springboot
- mssql
- PostgreSQL
- 인덱스
- 명령어
- Javascript
- docker
- 책
- 네트워크
- SQL
- Linux
- 리눅스
- git
- pandas
- 인터페이스
- MariaDB
- 티스토리챌린지
- 후기
- java
- 자바
- 독서
Archives
- Today
- Total
hanker
[JSP] jsp include (JSP 안에 JSP 넣기) 본문
반응형
JSP(JavaServer Pages)에서 다른 JSP 파일을 포함하는 방법에 대해서 알아보자.
주로 사용 목적에 따라 Static Include와 Dynamic Include로 나뉜다.
1. 정적 include
<%@ include file="header.jsp" %>
- 컴파일 시점에 포함: 소스 코드 자체가 JSP 변환 전에 물리적으로 합쳐짐
- 단일 서블릿 생성: 포함된 모든 파일이 하나의 서블릿으로 컴파일됨
- 변수 공유: 포함된 모든 파일이 같은 스코프를 공유함
- 성능 우수: 한 번 컴파일되어 서블릿이 한 번만 생성되므로 실행 속도가 빠름
- 정적 콘텐츠: 컴파일 후에는 변경 불가능
작용 상황
- 자주 변경되지 않는 공통 헤더, 푸터
- 공통 변수 선언이나 메서드 정의
- 사이트 전체에서 공통으로 사용되는 상수나 설정
- 성능이 중요한 부분
2. 동적 include
<jsp:include page="footer.jsp" />
- 파라미터 전송 시
<jsp:include page="footer.jsp">
<jsp:param name="user" value="홍길동" />
</jsp:include>
- 런타임 시점에 포함: 실행 시점에 요청을 포함된 페이지로 전달하고 결과를 포함
- 다중 서블릿 생성: 각 JSP 파일마다 별도의 서블릿으로 컴파일됨
- 변수 분리: 각 파일은 별도의 스코프를 가짐 (직접 변수 공유 불가)
- 요청 매개변수 전달: param 태그로 데이터 전달 가능
- 동적 콘텐츠: 매 요청마다 새로 처리되므로 항상 최신 내용 반영
적용 상황
- 자주 변경되는 콘텐츠
- 각 포함 페이지가 독립적으로 작동해야 하는 경우
- 실행 시점에 다른 페이지를 포함해야 하는 경우 (조건부 포함)
- 파라미터에 따라 다른 결과를 보여줘야 하는 경우
정리
구분 | 정적 <%@ include %> | 동적 <jsp:include> |
포함 시점 | 컴파일 타임 | 런타임 |
성능 | 빠름 (정적) | 약간 느림 (동적) |
스코프 공유 | O | X |
리로드 반영 | 서버 재시작 필요 | 즉시 반영 |
변수 공유 | 공유됨 | 공유되지 않음 |
반응형
'HTML,JSP' 카테고리의 다른 글
[HTML] span 태그와 div 태그의 차이점 (0) | 2025.05.24 |
---|---|
[JSP] jsp 스크립틀릿(Scriptlet) jsp 페이지 내에서 Java 코드 작성 (0) | 2025.05.20 |
Spring Thymeleaf - option 태그 list 출력 (반복문) (0) | 2021.06.22 |
HTML - 배경이미지 화면에 꽉채우기 (0) | 2021.04.07 |
JSP - 한글 깨짐현상 (0) | 2020.12.22 |