web.xml은 Java 웹 애플리케이션에서 사용하는 배치 지시자 파일입니다. 
이 파일은 웹 애플리케이션의 구성 정보와 서블릿 설정, 매핑 정보, 보안 설정 등을 담고 있습니다.

web.xml 파일은 웹 애플리케이션이 시작될 때 웹 컨테이너에 의해 로딩되어 애플리케이션 
컨텍스트의 초기화 매개변수로 사용됩니다. 또한, 서블릿 매핑 정보를 정의하여 URL 요청과 
서블릿 클래스 간의 매핑을 설정하거나, 보안 설정을 통해 사용자 인증, 권한 부여 등을 
설정할 수 있습니다.

최근에는 Java EE 6 버전부터는 web.xml 대신에 Java 어노테이션을 사용하여 서블릿과 필터를 
설정할 수 있는데, 이를 통해 더 간단하고 직관적인 설정이 가능해졌습니다. 하지만 여전히 일부 
웹 애플리케이션에서는 web.xml 파일을 사용하고 있습니다.

web.xml 파일은 웹 애플리케이션이 서버에 배포(deploy)될 때, 해당 애플리케이션의 설정 정보를 
담고 있는 XML 파일로써, 웹 서버가 시작될 때 한 번만 로딩되며, 
이후에는 수정이 되더라도 적용되지 않습니다. 따라서 웹 애플리케이션의 설정을 
변경하려면 해당 애플리케이션을 다시 배포해야 합니다.
서블릿(Servlet)에서 URL 매핑(URL mapping)은 클라이언트의 HTTP 요청을 처리할 서블릿을 
선택하는 방법을 지정합니다. URL 매핑은 web.xml 파일에서 설정하거나 간편하게 클래스 
파일에서 어노테이션을 지정해서 사용할 수 있습니다.
package com.tenco;

import java.io.BufferedWriter;
import java.io.IOException;
import java.io.OutputStreamWriter;
import java.io.PrintWriter;

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

/**
 * Servlet implementation class MyServlet
 */
@WebServlet("/ms")
public class MyServlet extends HttpServlet {
	private static final long serialVersionUID = 1L;
       
    public MyServlet() {
        super();
    }
    
	protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
		System.out.println("contentType : " + request.getContentType());
		
		
		// 응답 response 객체를 사용하면 된다. 
		PrintWriter out = response.getWriter();
		response.setContentType("text/html; charset=utf-8;");
		out.print("<!DOCTYPE html>");
		out.print("<html>");
		out.print("<head>");
		out.print("</head>");
		out.print("<body>");
		out.print("<section>");
		out.print("<p style=\"color:red\">");
		out.print("Hello First Servlet ");
		out.print("</p>");
		out.print("</section>");
		out.print("</body>");
		out.print("</html>");
		
	}


	protected void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
		//doGet(request, response);
	}

}

'JSP' 카테고리의 다른 글

Servlet Life-Cycle  (0) 2023.03.27
Servlet mapping  (0) 2023.03.27
웹 서버와 웹 애플리케이션 서버란?  (0) 2023.03.27
JSP + Flex 연습  (1) 2023.03.27
개발 환경 셋팅  (0) 2023.03.27

+ Recent posts