[부스트코스 웹] JSP

June·2021년 1월 4일
0

부스트코스

목록 보기
11/23

JSP (Javer ServerPage)

jsp는 톰캣 내부에서 서블릿으로 바뀌어서 실행된다.

JSP의 실행순서

  1. 브라우저가 웹서버에 JSP에 대한 요청 정보를 전달한다.
  2. 브라우저가 요청한 JSP가 최초로 요청했을 경우만
    1. JSP로 작성된 코드가 서블릿으로 코드로 변환한다. (java 파일 생성)
    2. 서블릿 코드를 컴파일해서 실행가능한 bytecode로 변환한다. (class 파일 생성)
    3. 서블릿 클래스를 로딩하고 인스턴스를 생성한다.
  3. 서블릿이 실행되어 요청을 처리하고 응답 정보를 생성한다.

JSP의 문법

스크립스 요소의 이해

  • JSP페이지에서는 선언문(Declaration), 스크립트릿(Scriptlet), 표현식(Expression)이라는 3가지의 스크립트 요소를 제공.
    1. 선언문(Declaration) - <%! %> : 전역변수 선언 및 메소드 선언에 사용
    2. 스크립트릿(Scriptlet) - <% %> : 프로그래밍 코드 기술에 사용
    3. 표현식(Expression) - <%=%> : 화면에 출력할 내용 기술에 사용

선언문(Declaration)

  1. 선언문: <%! %>
  2. 선언문은 JSP 페이지 내에서 필요한 멤버변수나 메소드가 필요할 때 선언해 사용하는 요소
  3. 선언문의 문법
    1. <%! 문장 %>
<%@ 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>

id : <%=getId() %>
</body>
</html>

<%!
    String id = "u001"; //멤버변수 선언
    public String getId( ) { //메소드 선언
        return id;
    }
%>

스크립트릿(Scriptlet)

  1. 스크립트릿 : <% %>
  2. 가장 일반적으로 많이 쓰이는 스크립트 요소
  3. 주로 프로그래밍의 로직을 기술할 때 사용
  4. 스크립트릿에서 선언된 변수는 지역변수
  5. 스크립트릿의 문법
    . <% 문장 %>
<%@ 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>

<%
for(int i = 1; i <= 5; i++){
%>
<H<%=i %>> 아름다운 한글 </H<%=i %>>
<%
}
%>
</body>
</html>

표현식 (Expression)

  1. 표현식: <%=%>
  2. JSP 페이지에서 웹 브라우저에 출력할 부분을 표현
    즉, 화면에 출려갛기 위한 것
  3. 스크립트릿내에서 출력할 부분은 내장객체인 out객체의 print()또는 println()메소드를 사용해서 출력
  4. 표현식의 문법
    1. <%=문장%>

주석

HTML 주석

<!-- 주석 -->

JSP 내장 객체

  1. JSP를 실행하면 서블릿 소스가 생성되고 실행된다.
  2. JSP에 입력한 대부분의 코드는 생성되는 서블릿 소스의 _jspService() 메소드 안에 삽입되는 코드로 생성된다.
  3. _jspService()에 삽입된 코드의 윗 부분에 미리 선언된 객체들이 있는데, 해당 객체들은 jsp에서도 사용가능하다.
  4. response, request, application, session, out과 같은 변수를 내장객체라고 한다.

0개의 댓글