19.04.26 JSP 페이지 디렉티브, 페이지 스크립트 요소 (동영상 5강~8강)
Back-End/JSP 2019. 4. 26. 14:44- JSP 페이지 디렉티브 -
속 성 |
설 명 |
기본값 |
language |
JSP 스크립트 코드에서 사용되는 프로그래밍 언어를 지정한다. |
java |
contentType |
JSP가 생성할 문서의 타입을 지정한다. |
text/html |
import |
JSP 페이지에서 사용할 자바 클래스를 지정한다. |
|
session |
JSP 페이지가 세션을 사용할지의 여부를 지정한다. |
true |
buffer |
JSP 페이지의 출력 버퍼크기를 지정한다. "none" 일 경우 출력버퍼를 사용하지 않으며, "8kb" 라고 입력할 경우 8킬로바이트 |
최소 8kb |
autoFlush |
출력 버퍼가 다 찼을 경우 자동으로 버퍼에 있는 데이터를 출력 스트림에 보내고 |
true |
info |
JSP 페이지에 대한 설명을 입력한다. |
|
errorPage |
JSP 페이지를 실행하는 도중 에러가 발생할 때 보여줄 페이지를 지정한다. |
|
isErroePage |
현재 페이지에 에러가 발생될때 보여지는 페이지인지의 여부를 지정한다. |
false |
pageEncoding |
JSP 페이지 자체의 캐릭터 인코딩을 지정한다. |
|
<%@ page language="java" contentType="text/html; charset=UTF-8" page language=사용할 언어 <% |
-에러 코드 예제-
JSP 에서는 위쪽 형식에 <% errorPage="Error.jsp" isErrorPage="true"%> 코드를 붙여서 에러표시를 한다.
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 |
<%@page import="java.util.Date" %>
<%@ page language="java" contentType="text/html; charset=EUC-KR"
pageEncoding="EUC-KR" import="java.util.Date" errorPage="Error.jsp" isErrorPage="true"%>
<!DOCTYPE html html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/htm14/loose.dtd">
<html>
<head>
<meta http-equiv="Content-Type" content ="text/html; charset=EUC-KR">
<title>Insert title here</title>
</head>
<body>
나 화면에 보여지니?
<%
int sum = 10/0;//에러코드를 작성 어떤수를 0으로 나눌수가 없기 때문에 에러가 뜬다.
%>
</body>
</html> |
cs |
1
2
3
4
5
6
7
8
9
10
11
12
13
14 |
<%@ page language="java" contentType="text/html; charset=UTF-8"
pageEncoding="UTF-8"%>
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<title>Insert title here</title>
</head>
<body>
에러 페이지 입니다.
</body>
</html> |
cs |
-스크립트릿<%! %>-
스크립트릿은 가장 일반적으로 JSP 페이지에서 많이 쓰이는 스크립트 요소로
주로 프로그래밍의 로직을 기술할 때 많이 쓰인다.
스크립트릿에서 선언한 변수는 JSP 페이지가 서블릿으로 변환될때
지역변수로 사용된다.
<%! %> |
-선언문<%! %>-
선언문은 일반적으로 JSP 페이지에서 자바의 멤버변수 또는
멤버 메소드로 사용하고자 할때 주로 사용된다.
선언문의 변수는 서블릿으로 변환될 때 멤버변수로 변환되고
선언문에서의 메소드는 서블릿에서 메소드로 만들어진다.
<%! 자바 코드 삽입 %> |
-표현식 <%= %>-
표현식은 일반적으로 JSP페이지에서 자바의 System.out.println()과 유사하게 사용된다.
데이터 출력을 할때 주로 사용되는 프로그래밍의 로직 기술이다.
<%= %> |
-예제 및 출력 결과-
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
32
33
34
35 |
<%@ page language="java" contentType="text/html; charset=EUC-KR"
pageEncoding="EUC-KR"%>
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=EUC-KR">
<title>Insert title here</title>
</head>
<body>
<h2>화면에 구구단을 출력하시오</h2>
<%
//자바코드는 <%안쪽에 적기, <%=는 브라우저에 표시될 값
for (int i = 2; i < 10; i++) {
for (int j = 1; j < 10; j++) {
%>
<%=i%>
+
<%=j%>
=
<%=i * j%>
<%
}
%>
<br>
<%
}
%>
</body>
</html> |
cs |
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 |
<%@ page language="java" contentType="text/html; charset=EUC-KR"
pageEncoding="EUC-KR"%>
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<title>Insert title here</title>
</head>
<body>
<h2>화면에 구구단을 출력하시오</h2>
//위에 코드와 같은 값이 출력됨 (이게 더 간단함)
<%
//자바코드는 <%안쪽에 적기, <%=는 브라우저에 표시될 값
for (int i = 2; i < 10; i++) {
for(int j = 1; j < 10; j++){
out.write(i+ " * " + j + " = " +i*j); //out.write는 <%= 와 동일한 뜻을 가진다.
}
}
%>
</body>
</html> |
cs |
<참고> JSP 파일을 콘솔창에 출력이 되도록 컴파일을 해야 jsp.java 파일과 jsp.class 파일이 추가가 된다. |
-예제-
선언문- <%만쓰면 메소드 안에서 문자만 출력이 가능하기 때문에 메소드 안에 메소드가
선언이 될수 없어, <%!를 쓰면 멤버 메소드로 생성이 되게 된다.
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24 |
<%@ page language="java" contentType="text/html; charset=UTF-8"
pageEncoding="UTF-8"%>
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<title>Insert title here</title>
</head>
<body>
<%!public void inCrement() {
}%>
<%!int a = 10; //멤버 메소드내에서 만들어짐(멤버변수임)%>
<%
int a = 100; //서비스 메소드내에서 만들어짐 (지역변수임) 따라서 2개가 중복이 안됨
%>
</body>
</html> |
cs |
'Back-End > JSP' 카테고리의 다른 글
19.04.27 JSP 기본 제어문 (0) | 2019.04.27 |
---|---|
jsp 페이지가 실행될 때 서블릿 코드로 변환이 되는 위치 (0) | 2019.04.27 |
19.04.26 JSP 기본 문법 (교재) (0) | 2019.04.26 |
19.04.25 웹 프로그래밍의 이해 (0) | 2019.04.25 |
JSP 책 학습일정 (0) | 2019.04.25 |