jsp 페이지에 servlet연결하기
servlet은 mvc형태에서 controller역할
전에 만들어뒀던 기본 html코드에 간단하게 web.xml연동
서블릿을 만들어 서버에 기능을 넣기
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
|
<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title>Hello Jsp</title>
</head>
<body>
<h1>JSP 홈페이지 메인화면!</h1>
<ul>
<li><a href="first.do">서블릿 연결하기</a></li>
</ul>
</body>
</html>
|
cs |
-패키지와 클래스 생성
생성한 일반 클래스에서 Servlet연결하기
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
|
import java.io.IOException;
import java.io.PrintWriter;
import javax.servlet.ServletException;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
public class BasicServlet extends HttpServlet{
/**
*
*/
private static final long serialVersionUID = 1L;
@Override
protected void doGet(HttpServletRequest req, HttpServletResponse res)
throws ServletException, IOException{
System.out.println("서버 요청");
res.setContentType("text/html; charset=utf-8");
PrintWriter out = res.getWriter();
out.write("<html>");
out.write("<body>");
out.write("<h1>서블릿에서 반환한 내용 </h>");
out.write("</body>");
out.write("</html>");
}
}
|
cs |
-클래스에서 HttpServlet클래스를 상속받기 -> import javax.servlet.ServletException
-상속을 받은 후 Servlet으로 역할을 실행하기 위해 doGet(), doPost() 두 개의 메소드를 구현
-위 두개의 메소드 구현 시ServletException처리를 해줘야함
HttpServletRequest : 사용자가 보낸 데이터를 저장하는 객체 -> 데이터관련된 기능제공하는 객체
HttpServletResponse : 사용자(client)에게 응답할 정보를 가지고 있는 객체
HttpServletResponse객체를 이용해서 응답 메세지 작성하기
↓
이제 생성된 서블릿 web.xml에서 등록하고 mapping하기
-<servlet></servlet>태그를 이용해서 등록
<servlet-name> : web.xml내부에서 사용하는 이름(변수명), 서블릿을 구별함
<servlet-class> : 등록할 서블릿의 경로와 이름 * 패키지명까지 작성
*위에 두태그가 없으면 실행안됨
-<servlet-mapping></servlet-mapping> mapping해주기 등록된 서블릿을 주소와 맵핑
<servlet-name> : 등록한 서블릿의 servlet-name값을 가져와 사용
<url-pattern> : 연결된 주소의 명칭
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
|
<?xml version="1.0" encoding="UTF-8"?>
<web-app xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns="http://xmlns.jcp.org/xml/ns/javaee" xsi:schemaLocation="http://xmlns.jcp.org/xml/ns/javaee http://xmlns.jcp.org/xml/ns/javaee/web-app_3_1.xsd" id="WebApp_ID" version="3.1">
<display-name>HelloJSP</display-name>
<servlet>
<servlet-name>first</servlet-name>
<servlet-class>com.servlet.controller.BasicServlet</servlet-class>
</servlet>
<servlet-mapping>
<servlet-name>first</servlet-name>
<url-pattern>/first.do</url-pattern>
</servlet-mapping>
<welcome-file-list>
<welcome-file>index.html</welcome-file>
<welcome-file>index.htm</welcome-file>
<welcome-file>index.jsp</welcome-file>
<welcome-file>default.html</welcome-file>
<welcome-file>default.htm</welcome-file>
<welcome-file>default.jsp</welcome-file>
</welcome-file-list>
</web-app>
|
cs |
그러면 실행하고 끝!
콘솔창에서도 서버 요청한거 확인할 수 있음
+번외) 오류 알기
HTTP 상태 404는 주소값이 잘 못 되었다는 뜻
오타와의 싸움
'Programming | Study > JSP | Servlet' 카테고리의 다른 글
[servlet] ServletContextListener 구현 (0) | 2021.04.23 |
---|---|
[Jsp/Servlet] tomcat 서버 에러 (0) | 2021.04.22 |
Servlet 연결하기 - Annotation(어노테이션) 방식 (0) | 2021.04.22 |
JSP 기본 페이지 만들기 (0) | 2021.04.22 |
내가 보려고 쓰는 eclipse에 tomcat 서버 연동하기 (0) | 2021.04.22 |
댓글