D+23(2) [Page 디렉티브, 스크립트 요소]
page 디렉티브
tomcat에게 정보를 알려주기 위해 설정하는 것 이라고 생각하면 댐
JSP 페이지에 대한 정보를 입력하기 위해 사용 : 문서의 타입, 사용할 클래스, 버퍼 여부, 세션 여부
- session : 사용자 여부를 계속해서 연결함
- charset : 브라우저로 보낼때 인코딩을 설정하는 것
- pageEncoding : 파일의 인코딩을 설정하는 것(코드가 눈에 보이는 것)
contentType 속성과 캐릭터 셋
JSP 페이지가 생성할 문서의 타입을 지정
contentType 속성 형식
TYPE
TYPE; charset=캐릭터셋
- TYPE : 생성할 문서의 MIME 타입 : text/html, text/xml, text/plain 등
- 캐릭터셋 : 응답 문서의 문자 인코딩 지정 : EUC-KR, UTF-8, ISO-8859-1 등
EUC-KR : eng 1byte / kor 2byte
UTF-8 : eng 1byte / kor 3byte
ISO-8859-1 : all 1 byte
import 속성
JSP 페이지에서 사용할 클래스(인터페이스) 지정
유일하게 여러개를 사용할 수 있는 page 디렉티브의 속성
import 속성의 사용 예
<%@ page import="java.util.Calendar"%> 한개만 지정
<%@ page import="java.util.Calendar,java.util.Date"%> 한 줄에 여러개 지정
<%@ page import="java.util.*"%> 전체 지정
trimDirectiveWhitespaces 속성을 이용한 공백 처리
JSP 파일을 만든 후, 소스코드를 보면 밑의 그림과 같이 위에 공백이 생김
이를 없애기 위해 설정 부분에 <%@ page trimDirectivewhitespaces %>를 넣어주면, 실행 후 소스코드를 봤을 때 공백이 없어짐
스크립트 요소
스크립트릿
JSP 페이지에서 자바 코드를 실행할 때 사용되는 코드의 블록
문법 구조 : <% 자바 코드 %>
표현식
값을 출력 결과에 포함시키고자 할 때 사용
문법 구조 : <% = 출력할 결과 %>
- <%= 1+2+3+4+5+6+7+8+9+10> 은 바로 55로 출력됨
- body 안에 들어간 1+2+3+4+5+6+7+8+9+10는 그냥 문자 그대로 출력 됨
선언부
함수 작성할 때 사용
문법 구조
<%!
public 리턴타입 메서드이름(파라미터목록){
코드1;
코드2;
...
코드n;
return 값;
}
%>
* 자바 클래스만 만들어서 출력하면 콘솔에 출력됨
* JSP에 출력하면, 웹에서 출력되기 때문에, 다양하게 활용 가능