아인띠
Hello, Ain!
아인띠
  • 분류 전체보기 (23)
    • 사담🌹 (1)
    • Basic (7)
      • 알고리즘 (4)
    • Front (1)
      • React (1)
    • Back (9)
      • Java (5)
      • DATABASE (3)
      • JSP (1)
      • Python (0)
    • ETC (5)
      • Unity(C#) (2)

인기 글

티스토리

hELLO · Designed By 정상우.
아인띠

Hello, Ain!

Back/JSP

JSP 기초

2021. 7. 22. 13:10

⭐ JSP페이지: UI (HTML+CSS+JavaScript) + JAVA코드

- JAVA코드는 <% %> (스크립트릿) 안에 구현한다

- 기자인 코드와 서버로직 코드를 가지고있는 페이지이다.

 

⭐ JSP 동작 방식의 특징

- 프로세스 방식이 아닌 스레드 방식으로 실행

- 클라이언트의 요구를 처리하는 기능은 최초 한 번만 메모리에 로드

- 클라이언트가 동일한 기능을 요구하면 기존에 사용한 기능 재사용

 

 

⭐ JSP 구성요소

1. 선언부: page 지시자 (사용언어, 인코딩, import 등)

2. 스크립트요소

스크립트릿 <% %> JSP 내부에 자바코드 삽입시 사용
표현식 <%= %> 출력 결과에 값을 넣을 때 사용 ( =을 response)
선언부(scope page) <%! %> JSP 페이지 내부에 자바 메소드를 선언 (공통자원 정의)

3. 지시어(디렉티브:directive)

<%@page ...%> 페이지 정보 설정 / 스크립트언어, 에러페이지지정, 버퍼설정 등을 정의한다
<%@include ...%> 특정 영역에 다른 문서를 포함
<%@taglib ...%> 페이지에서 사용할 태그 라이브러리 설정

 


⭐ 내장객체 (사전 정의된 객체 / new 하지 않고 사용할 수 있는 객체!)

- request: 요청 객체 / 클라이언트 정보(입력 데이터, IP, 브라우저 버전 등)를 취득할 떄 사용

- response: 응답 객체 / 서버가 가지고 있는 자원을 클라이언트에게 write할 때 사용

- out: 출력을 클라이언트로 보내는 객체

- session: 서버측 웹컨테이너에 사용자의 상태를 관리하는 객체

- application: 어플리케이션 전반에 걸친 정보를 관리하는 객체

- config: 페이지와 관련된 서블릿 설정 객체

- pageContext: 현재 페이지의 내용을 저장하고 있는 객체

- page: 페이지에 대한 실제 인스턴스(자바클래스)를 저장하고 있는 객체

- Exception: 이전페이지의 에러를 저장하고 있는 객체

 

 

> 요청 페이지당 request 한개가 자동 생성된다

> 클라이언트가 서버에 전송을 요청하면 클라이언트에게 수많은 정보가 전달되고, 그 정보를 받는 객체가 request!!


⭐ 액션태그 (Action Tag)

- jsp:include > 페이지가 요청될 때 해당 태그가 위치한 곳에 파일을 포함시킨다

- jsp:forward > 하나의 jsp페이지에서 다른 jsp페이지로 강제이동시킨다

- jsp:element > XML태그를 동적으로 정의한다

- jsp:attribute > 동적으로 정의된 XML태그의 속성을 정의한다

- jsp:body > 동적으로 정의된 XML태그의 본문을 정의한다.

저작자표시 (새창열림)
    아인띠
    아인띠
    https://github.com/aine-jeong

    티스토리툴바