Servlet (Java 파일) 파일 바로 실행하기

2023. 1. 5. 09:35JSP

web.xml

<?xml version="1.0" encoding="UTF-8"?>
<web-app xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns="http://java.sun.com/xml/ns/javaee" xsi:schemaLocation="http://java.sun.com/xml/ns/javaee http://java.sun.com/xml/ns/javaee/web-app_3_0.xsd" id="WebApp_ID" version="3.0">
  <display-name>Practice_Chap02_Servlet-1</display-name>
  <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>
  
  <!-- 매핑해야될 서블릿 파일을 지정함 -->
  <servlet>
  	<servlet-name>HelloWorld</servlet-name>
  	<servlet-class>sec01_exam.HelloWorld</servlet-class>
  </servlet>
  <!-- 위에서 지정한 매핑할 서블릿 파일을 아래 url-pattern태그를 이용하여
  url창에 표식이 되도록 한다.위에서 서블릿네임으로 지정한 값과 동일하게 입력을 해줘야한다. -->
  <servlet-mapping>
  	<servlet-name>HelloWorld</servlet-name>
  	<url-pattern>/hw</url-pattern>
  </servlet-mapping>  
  
</web-app>

프로젝트 내 Java Resources 내 src 내 sec01_exam 패키지 내 HelloWorld.java 서블릿 파일

package sec01_exam;

import java.io.IOException;

import javax.servlet.ServletException;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;

//javax.servlet패키지에 예외가 발생하면, 프로젝트 우클릭해서 build path -> libraries -> add external jars
//->톰캣폴더\lib\ -> 찾기(jsp-api.jar, servlet_api.jar추가를 됨.

/**
 * Servlet implementation class HelloWorld
 */
//URL매핑코드가 @WebServlet어노테이션에 명기되어 있다.
//@WebServlet어노테이션보다 web.xml에서 지정한 매핑코드가 우선순위 훨씬 높다.
//서블릿 파일이 되면 HttpServlet클래스를 자동으로 상속 받는다.
//@WebServlet("/Hworld")
public class HelloWorld extends HttpServlet {
	private static final long serialVersionUID = 1L;

    /**
     * Default constructor. 
     */
	//생성자
    public HelloWorld() {      
    }

	//여기서 2가지의 메서드가 나오는데 doGet(),doPost()인데, 이것은 이 서블릿 파일이 처리하는 부분이다.
    //이 서블릿을 호출할때 클라이언트에서 요청이 들어올 때, get방식이냐, post방식이냐에 따라 호출이 달라진다.
    //보통, doGet()메서드는 폼을 그냥 출력하는 형태로 많이 쓰이고, doPost메서드는 데이터를 가공이나 처리코드
    //실행할 때 많이 사용된다.
	protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
		System.out.println("Hellow World");
		System.out.println("doGet()");
	}

	protected void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
		System.out.println("Hellow World");
		System.out.println("doPost()");
	}
	//결론
	//1.jsp파일 : HTML파일내에 jsp코드를 넣는 것
	//2.servlet파일 : 자바파일이고, 아울러 반드시 매핑을 해서 사용해야 한다.
}

서블릿 파일 자체에서 오른쪽 마우스 클릭 후 Run As > Run on Server 하면

콘솔 창에 protected void doGet 메소드(함수) 부분 내용이 실행되고 출력된다

새로운 브라우저 창이 하나 뜨고 web.xml에 명기된 url-pattern 태그 내 단어가 브라우저 주소 경로 상에 표시된다.

'JSP' 카테고리의 다른 글

doPost() method 호출하기  (0) 2023.01.05
현재 시간 Servlet 파일  (0) 2023.01.05
Servlet 이란?  (0) 2023.01.03
DBeaver 설정  (0) 2022.12.20
<c:out> 과 ${} 의 차이  (0) 2022.12.20