본문 바로가기

코딩 공부/JSP

JSP의 사용

JSP 사용

jsp> html> JAVA 코드

JSP파일을 통채로 JAVA코드화 시킨다. 그것을 다시 HTML 태그로 랜더링 한다.

특징

1.동적 웹 애플리케이션 컴포넌트(자바 코드 사용 가능)

2.jsp 확장자

3. 클라이언트의 요청에 동적으로 작동하고 응답은 html이용

4.JSP는 웹서버와 통신 시에 자동으로 Servlet으로 변환됨

5.MVC패턴에서 View로 이용됨

JSP 태그의 개념 이해

-Servlet은 java언어를 이용하여 문서를 작성하고 출력 객체(Print Writer)를 이용하여 html 코드를 삽입합니다.

-jsp는 서블릿과 반대로 html 코드에 java언어를 삽입하여 동적 문서를 만들 수 있습니다

-html 코드 안에 java코드를 삽입하기 위해서는 jsp태그를 이용해야 하며, 이러한 

태그를 배워야 한다

JSP태그의 종류

 

종류 생김새 특징
스크립트릿(scriptlet) <% %> 모든 자바코드 기술 가능 지역변수
지시자(directive) <%@ %> 페이지 속성을 지정
선언자(declaration) <%! %> 변수나 메서드 선언시 사용
클래스 (객체생성)
접근 제한자 사용가능
표현식(expression) <%= %> 결과값을 출력할 때 사용
주석(comments) <%-- --%> 코드 주석처리 시에 사용

*브라우저에 바로 출력할 때 스크립틀릿 안에서 out.print()를 이용한다

Declaration

-JSP내에서 변수 또는 메서드를 선언을 할 때 사용한다.

-여기 선언된 변수 또는 메서드는 전역의 의미(멤버 변수)로 사용된다

 

<%!
int num=10;
String str = "변수선언";
ArrayList<String> list = new ArrayList<String>();//객체생성 초기화
public void method(){
System.out.println("메소드 선언");
}
%>

표현식(expression)

JSP페이지 내에서 사용되는 변수의 값 또는 메서드  호출 결괏값을 출력하기 위해 사용

결괏값의 데이터 유형은 String이며 ;을 사용할 수 없다.

표현식은 out.print()를 대체합니다.

 

주석(Comments)

- 실제 프로그램 실행에는 영향이 없고, 프로그램 설명 등의 목적으로 사용되는 태그임

 - HTML 및 JSP 주석이 각각 별도로 존재함 

- HTML 주석은 <!-- -->로 표기하고, 웹 브라우저에서 페이지 소스보기를 하면 주석도 표기됨

 - JSP 주석은 <%-- --%> 표기하고, 웹 브라우저에서 소스보기를 해도 나타나지 않음

 - JAVA의 주석도 혼용 사용 가능함 (// , /* ~~~ */)

지시자(Directive)

페이지의 전체적인 속성을 지정할 때 사용한다.

 

page : 

JSP페이지에 대한 정보를 지정한다. JSP가 생성하는 문서의 타입, 임포트, 에러 페이지 등 페이지에 서 필요로 하는 정보를 설정.

 - 페이지 디렉티브에 선언될 수 있는 속성들 

a. language - 언어를 지정합니다. java만 지정할 수 있다.

b. import - 패키지를 import 할 때 사용한다. 

c. errorPage - 설정된 페이지에서 에러가 발생했을 시에 미리 만들어 둔 에러 페이지를 호출한다. 

d. contentType - text/html이라고 쓰면 결과가 HTML 문서로 만들어진다. 

e. pageEncoding - 출력 문자 인코딩입니다. 한글을 사용하려면 utf-8로 지정한다.

  1. include: JSP 페이지의 특정 영역에 다른 문서를 포함시킨다.

<%@ include file="directive02_header.jsp" %>

  1. taglib: JSP 페이지에서 사용할 태그 (외부) 라이브러리를 지정한다. 

 

'코딩 공부 > JSP' 카테고리의 다른 글

JSTL  (0) 2022.10.28
EL태그  (0) 2022.10.27
내장객체  (0) 2022.10.26
JSP 내장객체  (0) 2022.10.13
JSP 환경설정  (0) 2022.10.11