Everything has an expiration date
[JSP & Servlet] 20231208 [프로그램소스] - Test001, Test002, Test003 본문
[JSP & Servlet]/Program source (JSP & Servlet)
[JSP & Servlet] 20231208 [프로그램소스] - Test001, Test002, Test003
Jelly-fish 2023. 12. 10. 14:48
WebApp06
Test001.jsp
Test001.jsp
<%@ page contentType="text/html; charset=UTF-8"%>
<%-- <%@ page buffer="8kb" autoFlush="true" %> --%>
<!-- ⓐ====================================================================== -->
<%-- <%@ page buffer="1kb" autoFlush="false" %> 일 경우 에러 발생 --%>
<!-- ======================================================================= -->
<!-- ⓑ====================================================================== -->
<%-- <%@ page buffer="1kb" autoFlush="true" %> 일 경우 에러 발생하지 않음 --%>
<!-- ⓑ : 버퍼 크기가 작긴해도, autoFlush가 자주 밀어줘서 에러 발생 Ⅹ -->
<!-- ======================================================================= -->
<!-- ⓒ====================================================================== -->
<%@ page buffer="10kb" autoFlush="false"%>
<!-- ======================================================================= -->
<!-- ⓒ : autoFlush가 false여도, 버퍼 크기가 크기 때문에, 오류가 발생하지 않음 -->
<!-- ※ [buffer] : 임시 기억 공간
버퍼 하나를 추가한다고 해서
4개의 저장공간을 5개로 만들 수는 없지만
관리가 더욱 용이해진다.
-->
<!-- ⓐ 버퍼 크기를 1kb로 줄이고, autoFlush="false"로 하자 서버오류 500 발생.
▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩
◎ 【JSP 버퍼 오버플로우(Overflow)】 : 넘쳐흐른다!
▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩
-->
<!-- [RPM (Revolutions Per Minute)] : 분당 회전수
→ 분당 회전수가 많을수록 처리 속도가 빠르다.
-->
<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title>Test001.jsp</title>
</head>
<body>
<div>
<h1>page 디렉티브 buffer 속성 및 autoFlush 실습</h1>
<hr>
</div>
<div>
<h2>반복문 구성</h2>
<%
for (int i = 1; i <= 1000; i++)
{
%>1234<%
}
%>
</div>
</body>
</html>
Test002.jsp
Test002.jsp
<%@ page contentType="text/html; charset=UTF-8"%>
<!-- [page 디렉티브] -->
<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title>Test002.jsp</title>
</head>
<body>
<div>
<h1>include 디렉티브 실습</h1>
<hr>
</div>
<!-- 디렉티브 사용.
[include 디렉티브] -->
<!--
include 디렉티브 실습
[Test003.jsp의 파일이 표시된다]
***************************************
Test002.jsp 와는 다른 독립적인 페이지
include 테스트 중...
***************************************
-->
<%@ include file="Test003.jsp"%>
<br><br>
<div>
<h2><%=str %></h2>
<h2><%=name %></h2>
</div>
<!-- 서블릿 코드를 생성할 때, JSP가 삽입되어 하나로 렌더링 된다. -->
<div>
<p>여러 JSP 페이지에서 공통적으로 포함하는 내용이 있을 때
이러한 내용을 매번 입력하지 않고 별도의 파일을 저장해 두었다가
JSP 파일에 삽입하도록 하는 것이 include 디렉티브이다.</p>
<p>include 지시어는 JSP에서 서블릿 코드를 생성할 때
텍스트나 코드를 JSP 파일 안으로 포함시키며
포함되는 파일의 내용은 include 지시어가 있는 위치에 삽입된다.</p>
</div>
<!--
include 디렉티브와 관련한 실습 진행중
박범구
★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★
Test003.jsp의 스크립트릿에서 선언한 변수까지 끌어올 수 있는 것을
확인할 수 있다!
즉, 시각적인 요소만 페이지에서 불러오는 것이 아니다!!
★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★
-->
</body>
</html>
Test003.jsp
Test003.jsp
<%@ page contentType="text/html; charset=UTF-8"%>
<%
String str = "include 디렉티브와 관련한 실습 진행중";
String name = "박범구";
%>
<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title>Test003.jsp</title>
</head>
<body>
<div>
<p>Test002.jsp 와는 다른 독립적인 페이지</p>
<p>include 테스트 중...</p>
</div>
</body>
</html>