JSP 기본 구조
정적 웹 사이트와 동적 웹 사이트
정적 웹 사이트의 구조
정적 웹 사이트는 웹 서버에서 항상 같은 문서를 전송하고, 미리 저장된 문서를 전송하므로 처리 속도가 빠른 장점이 있습니다.
동적 웹 사이트의 구조
동적 웹 사이트는 사용자가 웹 사이트를 방문했을 경우 그 사용자에 따라 서로 다른 결과를 보여주는 것을 의미합니다.
JSP는 접속 시간, 접속한 사용자의 회원 여부, 방문 횟수 등에 따라서 사용자(클라이언트)가 요청한 문서를 JSP 컨테이너를 거쳐서 새롭게 해석이 된 후에 JSP 코드들이 HTML 태그로 바뀌어 전송되는 것을 의미합니다.
이러한 처리를 통해서 사용자들(클라이언트)은 각각 다른 출력 결과를 볼 수 있습니다.
JSP 기본 구조
JSP의 기본 구조는 디렉티브 (Directive) 영역과 스크립트릿 (Scriptlet) 영역으로 나누어 집니다.
디렉티브 (Directive)
디렉티브 (Directive)는 JSP 페이지의 설정 정보를 지정합니다.
디렉티브 (Directive) 형식 |
<%@ 디렉티브이름 속성1=“값” 속성2=“값”...%> |
디렉티브 (Directive) 예제 |
<%@ page language="java" contentType="text/html; charset=euc-kr" %> <%@ page import = "java.util.*" %> |
디렉티브 (Directive) 종류 | 설 명 |
page | 페이지에 대한 정보를 지정함 |
taglib | 페이지에서 사용할 태그 라이브러리를 지정함 |
include | 페이지의 특정 영역에 다른 문서를 포함함 |
page 디렉티브
page 디렉티브는 JSP 페이지에 대한 정보를 지정합니다.
page 디렉티브 속성 | 설 명 |
autoFlush | 출력 버퍼가 다 찼을 경우 자동으로 버퍼에 있는 데이터를 보내고 비울지의 여부를 나타냄. 기본값 = “true” 로 지정함. |
buffer | 출력 버퍼의 크기를 지정함. ex) “8kb”라고 입력하면 8kb 크기의 출력 버퍼가 사용됨. 출력 버퍼의 최소크기 = “8kb” 임. |
contentType | JSP가 생성할 문서의 타입을 지정함. 기본값 = “text/html” 로 지정함 |
errorPage | 페이지를 실행하는 도중에 에러가 발생할 경우 보여줄 페이지를 지정함. |
isELIgnored | 표현 언어 지원 여부를 지정함. |
isErrorPage | 현재 페이지가 에러를 발생할 경우 보여지는 페이지인지의 여부를 지정함. 기본값 = “false” 로 지정함. |
import | 페이지에서 사용할 자바 클래스를 지정함. |
info | 페이지에 대한 설명을 입력함. |
language | JSP 스크립트 코드에서 사용되는 프로그래밍 언어를 지정함. 기본값 = “java” 로 지정함. |
session | 페이지가 세션을 사용할 지의 여부를 지정함. 기본값 = “true” 로 지정함. |
pageEncoding | 페이지 자체의 인코딩을 지정함. |
스크립트릿 (Scriptlet)
스크립트릿 (Scriptlet)은 자바 코드를 실행할 때 사용되는 명령어들을 삽입하는 부분을 의미합니다.
스크립트릿 (Scriptlet) 형식 |
<% 자바코드 1; 자바코드 2; .... %> |
스크립트릿 (Scriptlet) 예제 |
<% out.println("안녕하세요 ? JSP !!! "); %> |
JSP 식별자
JSP 식별자는 변수나 함수의 이름이 될 수 있는 프로그래머가 선언하는 단어를 의미합니다.
식별자 생성 규칙
● 문자와 숫자, _, $로 이루어져 있습니다.
● 특수 문자나 메타 문자를 사용할 수 없습니다.
● 한글을 식별자로 사용할 수 있습니다.
● 첫 글자는 문자만 사용할 수 있습니다.
● 대소문자의 구별이 있습니다.
● 예약어는 식별자로 사용할 수 없습니다.
ex) 사용 가능한 식별자 : strName, strName12
사용 불가능한 식별자 : 12strName, strName&12, int
JSP 변수
JSP 변수는 JAVA 의 형식에 따라 선언하여 사용합니다.
JSP 변수 사용 형식 | 자료형 식별자( 변수이름 ) |
JSP 변수 사용 예제 | String strName1; int intYear; |
JSP 자료형
변수나 상수에서 가질 수 있는 값의 형식을 의미합니다.
자료형의 지정으로 쓸데 없는 메모리의 낭비를 막을 수 있습니다.
프로그래머가 의도하지 않은 결과가 나오는 것을 막을 수 있습니다.
JSP 자료형은 숫자 자료형, 문자 자료형, 불린형 등이 있습니다.
숫자 자료형
숫자 자료형 | 범 위 |
byte (8비트 정수) | -128 ~ 127 까지의 정수를 저장함 |
short (16비트 정수) | -32,768 ~ 32,767 까지의 정수를 저장함 |
int (32비트 정수) | -2,147,483,684 ~ 2,147,483,647 까지의 정수를 저장함 |
long (64비트 정수) | -9,223,372,036,854,775,808 ∼ 9,223,372,036,854,885,807 의 범위를 가지는 정수를 저장함 |
float (32비트 실수) | -3.402823E38 ∼ -1.401298E-45 까지의 음수와 1.401298E-45 ∼ 3.402823E38 까지의 양수의 범위를 갖는 실수를 저장함 |
double (64비트 실수) | -1.79769313486232E308 ∼ -4.94065645841247E-324 의 음수와 4.94065645841247E-324 ∼ 1.79769313486232E308 의 양수의 범위를 갖는 실수를 저장함 |
형변환
형변환 형식 | (변환 자료형) 값 |
형변환 예제 | long number1 = 22L; int number2 = (int) number1; |
double number1 = 23.55; int number2 = (int) number1; |
자동 형변환
자료형 | 변환 가능한 자료형 |
byte | short, int , long, float, double |
short | int , long, float, double |
int | long, float, double |
long | float, double |
float | double |
문자 자료형
문자 자료형의 형식 | String 변수 = “문자열” |
문자 자료형의 예제 | String strName1 = “김길동” |
특수 문자
특수 문자 | 설명 |
\b | Backspace 를 의미함, 커서가 한 칸 뒤로 이동하여 위치함 |
\n | Newline 을 의미함, 커서가 다음 줄 맨 앞으로 이동하여 위치함 |
\t | Tab 을 의미함, 커서가 tab 키를 누른 만큼 이동하여 위치함 |
\r | Carriage return 을 의미함, 커서가 다음 줄 맨 앞으로 이동하여 위치함 |
\\ | Backslash 를 의미함, \를 출력함 |
\' | 작은 따옴표(')를 출력함 |
\" | 큰 따옴표(")를 출력함 |
불린(Boolean) 형
불린(Boolean) 형은 참이나 거짓과 같은 논리 상수만을 저장할 수 있는 형식을 의미합니다.
문자 | 설명 |
true | 참 |
false | 거짓 |
JSP 연산자
JSP 연산자는 수학적, 논리적 연산을 수행하는 기호를 의미합니다.
JSP 연산자는 산술 연산자, 대입 연산자, 연산 후 대입 연산자, 증가/감소 연산자, 비교 연산자, 논리 연산자, 연결 연산자 등이 있습니다.
산술 연산자
산술 계산을 위한 연산자를 의미합니다.
산술 연산자 | 설 명 |
+ | 더하기 |
- | 빼기 |
* | 곱하기 |
/ | 나누기 |
% | 나머지 |
대입 연산자
대입 연산자는 우변의 내용을 좌변의 변수에 대입할 때 사용하는 연산자입니다.
대입 연산자의 형식 | 변수 = 값 or 연산식; |
대입 연산자의 예제 | strName1 = "김길동“; sum = a + b; |
연산 후 대입 연산자
연산 후 대입 연산자는 좌변의 변수의 원래 값에 일반적인 산술 연산 값을 변수에 저장할 때 사용하는 연산자입니다.
연산 후 대입 연산자 | 설명 |
+= | 덧셈 연산후 대입함 |
-= | 뺄셈 연산후 대입함 |
*= | 곱셈 연산후 대입함 |
/= | 나눗셈 연산후 대입함 |
%= | 나머지 연산을 수행한 후에 대입함 |
증가/감소 연산자
변수의 앞이나 뒤에 붙여 사용하고, 변수의 값을 1씩 증가시키거나 감소시킬때 사용하는 연산자입니다.
증가/감소 연산자 | 설명 |
++ | 변수의 값을 1씩 증가시킴 |
-- | 변수의 값을 1씩 감소시킴 |
비교 연산자
두 변수 사이의 관계를 비교할 때 사용하는 연산자입니다.
비교 연산자 | 설 명 |
== | 같다 |
< | 보다 작다 |
<= | 보다 작거나 같다 |
> | 보다 크다 |
>= | 보다 크거나 같다 |
!= | 같지 않다 |
논리 연산자
조건의 논리 연산으로 참(True) 이나 거짓(False) 을 반환하는 연산자입니다.
논리 연산자 | 설 명 |
&& | 두 조건이 모두 참이면 참을 반환하는 연산자임 |
|| | 두 조건중 하나만 참이면 참을 반환하는 연산자임 |
! | 조건 값을 반대로 만드는 부정의 연산자임 |
& | 두 조건의 값이 모두 참이면 참을 반환하는 연산자임 |
| | 두 조건의 값 중 하나라도 참이면 참을 반환하는 연산자임 |
연결 연산자
두개의 문자열을 하나의 문자열로 연결하여 합칠 때 필요한 연산자로 ‘+’ 기호를 사용합니다.
JSP 배열
배열은 하나의 변수 이름에 인덱스 번호를 사용해 여러 값을 저장할 수 있는 데이터 집합입니다.
‘[ ]’ 안에 배열의 크기를 지정합니다.
JSP 배열 형식 | 자료형[ ] 식별자(변수이름) = new 자료형[배열크기]; |
JSP 배열 예제 | String[ ] strName = new String[10]; |
다차원 배열
다차원 배열은 여러 개의 인수를 사용하여 선언하는 배열을 의미합니다.
다차원 배열 형식 | 자료형[ ][ ] 식별자(변수이름) = new 자료형[배열크기][배열크기] |
다차원 배열 예제 | String[ ][ ] strStudent = new String[5][5]; |
JSP 주석
주석은 프로그래밍하는데 아무런 영향도 주지 않는 요소입니다.
주석은 소스 코드에 대한 설명 등을 추가할 때 사용합니다.
JSP 주석 표현 | <% -- 설명 -- %> |
Java 주석 표현 | ‘ // ’, ‘ /* 설명 */ ’ |
'JSP' 카테고리의 다른 글
JSP 반복문 (0) | 2022.07.10 |
---|---|
JSP 제어문 (0) | 2022.07.09 |
JSP와 서블릿(Servlet) (0) | 2022.07.08 |
HelloWorld Servlet 출력하기 (0) | 2022.07.07 |
JSP 개발 환경 구축 (0) | 2022.07.05 |
댓글