JSP_2강_2_JSP 개념2(지시어, 구성요소)

열라뽕따히·2024년 3월 14일

JSP

목록 보기
8/43

페이지 지시어(디렉티브)

<%@ page language="java" contentType="text/html; charset=UTF-8" pageEncoding="UTF-8"%>

language="java"

  • 해당 jsp 페이지에서 사용할 언어를 지정하는 속성. 만약 이 속성을 지정하지 않으면 기본값으로 Java가 지정됨.
  • 스크립트릿이나 표현식, 선언부를 작성할 때 사용할 프로그래밍 언어를 지정함.
    즉, jsp 페이지에 삽입되는 코드의 스크립팅 언어를 지정.

contentType

  • jsp 페이지의 내용이 어떤 형태로 출력을 할 것인지 MIME 형식으로 브라우저에게 알려주는 역할을 하는 속성임.
  • 지정할 속성 값으로는 text/html, text/plain, text/xml, text/gif 등 여러가지 값이 있으며, 기본값은 text/html의 MIME 형식임.
    ==> jsp 페이지의 내용을 어떤 형태로 출력할지를 웹 브라우저에게 알려주는 역할.

charset

  • 문자(한글) 설정(UTF-8, EUC-KR)
    ==> 설정하지 않으면 기본값인 ISO-8859-1 을 사용함.

import

  • 다른 패키지에 있는 클래스를 가져다가 사용할 때 지정.

session

  • jsp 페이지가 HttpSession 속성의 사용 여부를 지정.
  • 이 속성 값은 true와 false로 나누어져 있음.
  • true일 경우에는 현재 페이지가 세션을 유지하고, 세션이 존재하지 않을 경우에는 새로운 세션을 생성하여 연결되며, false일 경우에는 세션에 연결이 되지 않음.
  • 이 속성의 기본값은 true임.
    형식) <%@ page session="true" %>

isErrorPage

  • 현재 jsp 페이지가 에러 처리를 담당하는 페이지인지 아닌지의 여부를 지정할 때 사용되는 속성임.
  • 요청된 현재의 페이지가 예외를 발생하여 에러 처리를 위해서 만들어지는 에러 페이지라면 isErrorPage 속성 값을 "true"로 설정해야 함.
  • 이 속성의 기본값은 "false"로, 에러를 처리하지 않는 페이지라면 설정할 필요가 없음.

errorPage

  • jsp 페이지를 처리하는 도중에 페이지에서 예외가 발생할 경우 자신이 예외를 처리하지 않고, 다른 페이지에서 처리하도록 지정할 수 있는 속성임.
  • 속성 값으로는 직접 예외를 처리할 페이지의 로컬 url을 적어주면 됨.
  • 즉, 에러가 발생했을 때 보여줄 에러 페이지를 지정.

pageEncoding="UTF-8"
: 현재 페이지의 문자(한글) 설정. 출력할 데이터의 문자 집합을 지정함.



★★★JSP 페이지의 구성 요소★★★

  1. 스크립트릿
  • 가장 일반적으로 JSP 페이지에서 많이 쓰이는 스크립트 요소.
  • 주로 프로그래밍의 로직을 기술할 때 많이 사용이 됨.
  • JSP 페이지에서 자바 코드가 작성되는 공간.
    형식)
	  <%
	      자바 코드;
	  %>
  1. 표현식
  • 일반적으로 JSP 페이지에서 자바의 System.out.println() 과 유사하게 사용이 됨.
  • 데이터를 출력할 때 사용이 됨.
    형식) <%=값 또는 변수명 또는 수식 %>
  1. 선언부
  • 일반적으로 JSP 페이지에서 자바의 멤버변수 또는 멤버 메서드를 선언할 때 사용이 됨.
    형식)
	    <%!
	        변수 선언 또는 메서드 선언;
	     %>

=============================코드=============================

<%@ page language="java" contentType="text/html; charset=UTF-8"
    pageEncoding="UTF-8"%>
<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title>Insert title here</title>
</head>
<body>
	
	  <%
	 // 자바 코드가 들어가는 공간
	  	int su = 10;
        
	 // 콘솔창에 출력 됨
	  	System.out.println("su >>> " + su);
	  
	  	Calendar cal = Calendar.getInstance();
	  	
	  	//int year = cal.get(Calendar.YEAR);
	  	//int month = cal.get(Calendar.MONTH) + 1;
	  	//int day = cal.get(Calendar.DAY_OF_MONTH);
	  %>
	  
   <%-- jsp 표현식 : 웹 브라우저에 자바코드에서 작성된 변수나 수식을 출력할 수 있음 --%>
	  <p>su 변수 값 : <%= su %></p>
	  
	  <hr>
	  
	  <p>오늘 날짜는 <%= cal.get(Calendar.YEAR) %>년 
	  			   <%= cal.get(Calendar.MONTH) + 1 %>월 
	  			   <%= cal.get(Calendar.DAY_OF_MONTH) %>일 입니다.</p>
                   //변수명을 선언해줬다면 <%= year %>년 가능
                   
      <hr>
	  
	  <h2> 1 ~ 100 까지의 합을 구해보자</h2>
	  
	  <%
	  		int sum = 0;
	  
	  		for(int i = 1; i <= 100; i++){
	  			sum += i;
	  		}
	  
	  %>
	  
	  <h3>1 ~ 100까지의 합 >>> <%=sum %></h3>
	  
	  <hr>
	  
	  <%!
	  	// 선언부 : 보통은 메서드를 선언하는 공간
	  		public int plus(int su1, int su2) {
		  		return su1 + su2;
	 	    }
	  %>
	  
	  <h3>76 + 15 >>> <%=plus(76, 15) %></h3>

</body>
</html>

=============================실행=============================

콘솔창

홈페이지

0개의 댓글