웅진씽크빅 스타터스 부트캠프/강의 내용 정리

23.01.06 JSP

할루솔이 2023. 1. 6. 17:52
반응형

 

 

웹서버: web client의 요청을 받아서 처리 후 응답하는 컴퓨터

web server = tomcat

 

 

<a href=”a.html”>다른파일이동</a>

  1. 링크 클릭하면 이동
  2. 파라미터 공유 불가
  3. 자바 객체 해석 불가/객체 정보 공유 불가

 

 

version을 3 밑으로 설정해두면 web.xml이 기본 파일로 설정된다.

3 위로 설정하면 WEB-INF밑에 web.xml 안보인다.

 

대신 우클릭-javaEE tools-Generate…클릭하면 WEB-INF밑에 web.xml만들어짐

 

 

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>
<h1>spring 회원님 환영합니다</h1>
<% String id = request.getParameter("id"); %><!-- id값 불러오기 -->
<h1><%=id %> 회원님 환영합니다.</h1>
</body>
</html>

 

get방식으로 id넣어주면 확인 가능

 

 

-디렉티브태그=지시자태그=tomcat 지시 내용 정의

<%@ page
import=”java.util.Date”
contentType=”text/html;charset=utf-8” %>
현재 jsp페이지 여러 설정
import java.util.Date

class 서블릿

response.setContentType(text/html;charset=utf-8);
<%@ include file=”a.html” %> 다른 파일 포함해서 실행 - 재사용

<jsp: include…
<%@ taglib.. %> 표준 jsp 태그(jsp표준단체에서 정한 태그) 외 다른 단체에서 개발한 태그 모음 사용

jstl library

 

Date객체를 사용하려면 <%@ %>태그안에 Date import해줘야 함!

자동 import시키려면 ctrl+스페이스바 누르고 

하나 클릭하면 

뾰로롱~

 

위 코드 결과물

 

태그(tag)

디렉티브태그: <%@ %>

스크립트태그:

<% 자바 언어 문장 그대로; %>

<%! 변수 선언, 메서드 선언 %>

<%= 표현문태그. %>

         ex) value = <%= 로그인세션저장변수%>

               <%= id>

 

 

내장객체
request HttpServletRequest타입
response HttpServletResponse타입
out javax.servlet.jsp.JspWriter
java.io.PrintWriter 하위클래스
PrintWriter out = response.getWriter(); 서블릿
out내장 객체 생성 - jsp
out.println();
session HttpSession타입
applicaion ServletContext타입 - 서버정보와 웹어플리케이션의 정보를 제공해주는 객체
동일 웹어플리케이션 공유 메서드

 

객체공유
setAttribute(””,객체) 공유객체 저장
getAttribute(””) 공유객체 조회
removeAttribute(””) 공유객체 삭제

 

session

session은 내장객체가 존재한다! 대신 <%@ %>태그 내부에 true 작성해줘야 함.

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

 

만약 false로 해둔다면?!?!

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

오류가 난다~.~

 

 

에러 페이지(error-page)

<%@ %>태그 내부에 에러가 난다면 어떤 페이지를 보여줄건지 작성해줌!

 

 

나는 에러가 생기면 e.jsp를 보여준다고 했으니 e.jsp 태그 내부에 isErrorPage="true" 작성!!!

저 코드를 적어줘야 아래 <%=exception> 오류가 생기지 않는다!

 

 

web.xml을 열어서 살펴보면 여러가지 <welcom-file>태그를 확인할 수 있는데 

아래에 <error-page>태그를 새로 작성해준다.

<error-code>404</error-code> : 404에러를 만나면

<location>/error/e404.jsp</location> : e404.jsp를 보여줘라!!!

 

-e404.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>
<h1>요청한 파일은 서버 내부에 존재하지 않습니다. url을 확인하세요.</h1>
<img src="https://encrypted-tbn0.gstatic.com/imagesgoW2AKA&us"> <!--이미지 주소는 일부 삭제함 -->
</body>
</html>

잘못된 경로를 get방식으로 작성한 경우 e404에 작성해둔 내용 확인 가능

 

 

 

index.jsp

index.html부터 차례대로 내려옴. 없고 없고 index.jsp는 만들어 두었으니 확인 가능

 

 

아래 화면 확인 가능!

 

반응형