[JSP/Servlet] Servlet의 특징과 맵핑
by 임우찬 2019. 9. 12. 17:34
1. Servlet이란?
저번 글에서
이러한 사진을 사용했었다.
여기서 java파일이 servlet이라고 보면 된다.
- servlet 문서는 jsp와는 다르게 맵핑을 해주어야 한다.
이 맵핑 방법은 두 가지 방법이 제공이 된다.
하나는 web.xml에 맵핑이 제공되는 방법
또 하나는 자바 파일에 어노테이션을 이용해 직접 맵핑하는 방법이다.
2. Servlet의 특징
- 동적 웹 어플리케이션 컴포넌트이다.
- .java 확장자이다.
- 클라이언트의 요청에 동적으로 작동하고, 응답은 html을 이용한다.
- java thread를 이용한다.
(이것이 servlet을 사용하는 이유 중 가장 큰 장점중 하나이다.)
(많은 요청이 들어오더라도 thread를 이용하다보니 서버에 부하가적게걸린다.)
- MVC 패턴에서 Controller로 이용된다.
MVC 패턴
- Servlet은, 일반 클래스와는 다르게 상속받는 슈퍼클래스가 있다.
- HttpServlet을 상속받아야 서블릿 클래스가 된다.
3. Servlet 맵핑
- 너무 길고, 보안에 노출되어 있는 경로를 간단하게 맵핑하는 것이다.
ex)
- 맵핑을 하는 방법에는 두 가지가 있다.
1. web.xml을 이용하여 맵핑한다.
2. 자바 코드의 어노테이션을 이용한다.
- 맵핑하는 이유: 우선 너무 길고, 저 주소를 모두 다 노출시키면 보안에도 문제가 생길 수 있다.
- web.xml을 이용한 맵핑은 다음과 같이 한다.
여기서 <servlet-name>은 임의의 이름을 만들어주는 것이다. 따라서 helloHi라는 이름을 만들어 주었고,
<servlet-class>는 매핑할 클래스 파일명을 패키지명을 포함하여 정확하게 입력해 주는 것이다.
<url-pattern>은 servlet-class의 클래스를 매핑할 임의의 이름을 입력합니다. 주의할 점은 '/'로 시작해야 한다는 것이다.
- 어노테이션을 이용한 방법은 다음과 같이 한다.
web.xml이 아닌 해당 자바 코드 안에 @WebServlet이라는 어노테이션 키워드를 써주고, /로 시작하는 맵핑명을 써 주면 된다.
[JSP/Servlet] JSP의 특징과 아키텍처
2019.09.12
[JSP/Servlet] 개발환경 설정
2019.09.11
댓글 영역