본문 바로가기
JAVA/JSP, JSTL, EL

서블릿(Servlet) - 개념 / 용어 등

by 설총이 2018. 7. 12.

★서블릿 :: 웹 요청을 처리할수있는 class --- 실행 코드 방식(컴파일된 언어로 실행)

-> HttpServlet 이라는 클래스를 상속받고있는 클래스

----javax.servlet.http.HttpServlet 톰캣이 제공하는 jar파일임. 없으면 서블릿생성 불가.


★메서드 4개 외우기

doGet() : 웹 요청 처리. --- 요청 uri가 get방식 요청이 들어온 경우 실행

doPost() : 웹 요청 처리. --- 요청 uri가 post방식 요청이 들어온 경우 실행

init() : 초기화. 객체 생성후 단 한번 실행.

destroy() : 소멸. 객체 소멸 직전 단 한번 실행.


서블릿 등록하기

1. WEB-INF -> web.xml로 들어가서 서블릿 등록 -> 서블릿class안에 들어가는 text는 폴더명.클래스명

2.@WebServlet(urlPatterns = "/요청 uri") -- uri : path


1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
 
 <!-- 어노테이션 서블릿 등록 -->
 @WebServlet(urlPatterns = "/요청uri")
 
 
 <!-- web.xml에 서블릿 등록 -->
 <servlet>
     <servlet-name>nowservlet</servlet-name>
     <servlet-class>day01.NowServlet</servlet-class>
 </servlet>
 <servlet-mapping>
     <servlet-name>nowservlet</servlet-name>
     <url-pattern>/nowServlet</url-pattern>
 </servlet-mapping>
  
cs


서버 start -> 서버에올린 project 검사 : web.xml 읽는다. -> welcome-file 등록

-> 서블릿클래스도 객체로 만들고 이름등록,url 매핑) -> url에 맞는 요청


url 매핑에 맞는애가 없으면 해당경로에있는 파일을 실행. ex) http://localhost:8088/Front-EndEx/now.jsp

-> 매핑에 맞는애가 없다 X --- 경로로 인식해서 WebContent에 있는 파일을 찾아서 실행


url매핑에 맞는애가 있다면 그 서블릿을 찾아 실행한다

ex) http://localhost:8088/Front-EndEx/now ---> ex) @WebServlet("/now") 로 지정됨

ex) http://localhost:8088/Front-EndEx/nowServlet(위에 url-pattern 내용)


*서버가 구동이 안된다면 해결방법

build path - config - add library - server runtime - apache tomcat v8.5 추가