본문 바로가기

구디 아카데미 수료 과정/Servlet + JSP

구디아카데미 후기/ 국비지원IT개발자 취업 / 전민균 강사님/클라우드 활용 자바개발자 양성과정/•48일차/12.29

Servlet 요소 (web.xml)

용어 설명
Welcome pages -Application 실행 뒤 처음에 호출되는 Page
-첫페이지를 servlet을 호출할 수 있다
<welcome-page-list>
 <welcome-file>/WEB-INF/views/index.jsp </welcome-file>
</welcome-page-list>
servlet -요청되는 페이지에 1:1로 매핑되어 있는 class를 선언
servlet-name이 같은 servlet Mapping을 찾음

<servlet>
 <servlet-name>temp </servlet-name>
<servlet-class> com.min.~~~<servlet-calss>
      ->HttpServlet을 extends 하고 있는 클래스여야함
</servlet>
servlet mapping -요청되는 주소 1:1 매핑되어 있는 URL 선언
<servlet-mapping>
  <servlet-name> temp </servlet-name>
 <url-pattern> /temp.do </url-pattern>
</servlet-mapping>
init-param
(servlet 내에 작성)
-servlet 클래스에서 사용되는 초기값을 application 실행될 때 전달할 수 있다

<servlet>
 <servlet-name> temp </servlet-name>
<servlet-class> com.min~~~</servlet-calss>
   ->해당 servlet 클래스에서  getServletConfing().getIinitParam("param-name")
<init-param>
 <param-name>
 

context-param
(그냥 web.xml 내에 작성)
-application의 모든 곳에서 사용 가능한 초기값
<context-param>
   <param-name> </param-name>
   <param-value> </param-value>
</context-param>

getServletContext().getInitParam("param-name")
filter -가로채기 기술, scope(page scope, request scope, session scope, appliaction scope ->접근제한자 처럼 이해 )를 확인하거나  혹은 흐름을 제어할 때 사용

-<servlet> HttpServlet 을 사용하여 매핑
-<filter> implement javax.servlet.Filter를 구현하여 Life-Cycle을 구현한다

<filter>
  <filter-name></filter-name>
  <filter-class></filter-class>
</filter>

<filter-mapping>
  <filter-name></filter-name>
 <url-pattern>  </url-pattern>
</filter-mapping>
listener -자동실행 ( 특정한 기능이 실행되면 자동으로 호출)
-implements java.servlet.ServletContextListener를 Life-Cycle 개발
<listener>
 <listener-class>
</listener>
Error-Page -서버에서 요청이 처리되면 Status 코드를 반환해줌
- 200  정상처리
- 401 인증오류
- 404 요청페이지가 없을때 
- 505 서버값 오류

-코드요청에 따라서 오류라 판단되는 코드인 400, 404, 500, 505, 501이 발생되었을 때 특정 페이지로 이동
-해당 코드에서 기본으로 만들어주는 page는 너무 많은 정보 노출시키기 때문에 에러페이지를 따로 만드는 거임
<error -page>
   <error-code>  </error-code>
   <location>  /WEB-INF/view/error/505.html </loacation>
</error-page> 


웹용어

용어 내용
Request 클라이언트 요청
Response 요청한 클라이언트에 응답
Parsing(parse) 엔진(jasper)과 자바 사이의 용어를 해석 및 번역 ex) index.jsp-index_jsp.java->index_jsp.class
Sync request->response가 올떄가지 계속해서 브라우저가 대기상태(전체로딩)
ASync request->response가 올때까지 다음 작업(특정부분 데이터만 변경)  동시작업??
Stateless Response가 완료되어 각각의 연결을 해제한 상태
StateFull Response가 완료된 후에 계속적으로 연결을 유지한 상태
Browser IO.Network,Thread 등 사용자(Client)입장에서 처리할 수 있도록 해주는 도구
API Application Programming Interface 
Container와 Component 사이의 규약
Element <a href="#"> 안녕 </a>
MIME TYPE HTTP 전송시 서로 주고받은 문자의 타입을 지정하기 위해서 사용
GET 주소를 통해서 데이터(QueryString) 전달, 주소에 값이 노출, 한글 최대 1024자, header부분을 통해서 전달
POST 내부 변수 존재(name), 값이 노출되지 않음, 값에 제한이 없고 body를 통해서 전달 

 


스코프(Scope)

 

page Scope 

 

하나의 페이지(JSP)에 속한 곳에서만 사용 가능한 web 기본 scope

 

 

 

 

 

 

request Scope

  선행 JSP의 Object를 request scope를 통해서 후행 JSP 까지 전달이 가능.

  선택된 후행 페이지까지만 사용할 수 있다

  forward를 통해서 해당 페이지와 값(Object) 전달

request.setAttribute("key","value");

request.getRequestDispatcher("/이동URL").forward(request.response)

 

 

 

 

session Scope

: 서비스Context)에서 관리하는 모든 페이지에서 사용이 가능

  한 사람의 브라우저를 이용하여 service의 context를 이동할 때 session에 있는 모든 객체를 사용할 수 있다

   ** 한 브라우저 -> 열려있는 창

 

 

 

 

 

 

 

 

 

 

서버에 코드를 칠떄는 /

(request는 서버에 요청하는거니까 /)

 

 

화면에서 할 때는 ./

responce.redirect = 화면에 요총하는거니까 ./

 

 

 

 

 

 

 

 

 

구디아카데미 후기/ 국비지원IT개발자 취업 / 전민균 강사님