3/26(금) webserver/JSP

민국·2021년 3월 26일

JSP

1. JSP란? (Java Server Page)

: HTML형식 내에 자바코드를 사용할 수 있는 "자바 언어"로 서블릿(Java코드) 에서 응답화면(html)을 구현했던 복잡함을 간단하게 해결 가능
즉, JSP의 가장 큰 장점은 Servlet에서는 비즈니스 로직(데이터 처리)처리에만 집중하 응답화면을 만들어(프레젠테이션로직)내는건 JSP에서 집중하게끔 분리할 수 있는 것

2. JSP Elements 표현법

1) JSP 스크립팅 원소

: JSP페이지에서 자바 코드를 기술 할 수 있게 해주는 기능

(1) 선언문 : <%! 자바코드 %>

: 멤버 변수와 메소드를 선언하기 위해 사용

(2) 스크립틀릿 : <% 자바코드 %>

: JSP에서 자바코드를 기술하기 위한 제일 기본적인 표현법

<예시>
	<% // 스크립틀릿 : 이 안에 일반적인 자바코드 작성 가능 (변수 선언 및 초기화, 제어문 등등)
		int sum = 0;
		
		for(int i=1; i<=100; i++){
			sum += i;
		}
		
		System.out.println("덧셈끝! 결과 : " + sum);
	%>

(3) 표현식(출력식) : <%= 자바코드 %>

: 자바에서 작성한 값(또는 메소드 호출)을 화면에 출력하기 위해 사용

<예시>
		화면으로 출력하고자 한다면 
		스크립틀릿 이용해서 출력 가능 : <% out.println(sum); %> <br>
		표현식(출력식)으로 출력 가능 : <%= sum %>

3. 지시어(Directive)

: 현재 해당 JSP 페이지의 전체 정보를 기술 할 때 쓰임
<%@ page | include | taglib 속성 = "속성값" 속성 = "속성값" ...%>

1) Page지시자

: 현재의 JSP 페이지를 처리하는 데 필요한 각종 속성을 기술하는 부분(JSP문서의 최상단에 위치)

  • language : 현재 jsp에서 사용할 스크립트 언어 유형을 지정
  • contentType : 웹 브라우저가 받아 볼 페이지의 형식, 인코딩 방식 지정
  • pageEncoding : jsp파일에 기록된 자바코드의 인코딩 방식을 지정
  • import : 자바와 import와 같은 의미
  • errorPage / isErrorPage : 오류 페이지 관련

(1) import

: 자바에서 improt 제공하는 것과 마찬가지로 jsp에도 제공하고 있고, 사용해야만 함(jsp에 html + java 코드가 공존하기 때문에)
=> but, 일일이 import 찾아서 해야함...(자동완성 안됨 ㅠ)

(2) errorPage 관련

: page 오류가 날 시에 보여지는 화면구성하기
web.xml에 코드 추가해주기

<web.xml>
  <error-page>
  	<error-code>404</error-code>
  	<location>/views/error404.jsp</location>
  </error-page>
  
 <error404> 
 <%@ 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>
	<h1 style="color:orangered">잘못된 페이지 접근입니다. 경로를 찾을 수 없거나 변경 또는 삭제되었을 겁니다.</h1>
	<img src="https://mblogthumb-phinf.pstatic.net/MjAxOTA5MDZfMTgg/MDAxNTY3NzUyNDQ0NTgx.Ebcq2J8i8Rg44ixvQyCfmGqAZNCPMjZCrT_Dog7Mts4g.-4d34s3UnvbtDhjS5xU2ZOcuYJIBKcFgp1iAt-lgarIg.PNG.lw_10page/002_notfound%EC%9B%90%EC%9D%B8.png?type=w800">
</body>
</html>

404 오류 뜰 때 나타나는 화면 만들기

2) include지시자

: 현재 jsp에서 또다른 jsp를 포함하고자 할 때 사용하는 지시자

-> 해당 태그 내에 <% include file = "파일.jsp"%> 로 추가해준다

3) taglib 지시자

: JSP의 기능을 좀 더 확장할 수 있는 인자로 추가적인 라이브러리 등록 구문

4. 피자 주문 페이지 만들기

: 주문페이지(메뉴 선택) : JSP
-> Servlet : Servlet(java)
-> 주문페이지(사용자가 선택한 주문정보 및 가격 사용자에게 보여주는 페이지) : JSP
(즉,

profile
새싹개발자

0개의 댓글