특정 디렉토리가 웹 애플리케이션 디렉토리로 인식이 되려면 다음과 같은 특정한 구조를 가지고 있어야 한다.
디렉토리 구조
web.xml에서 정의한 서블릿 배포에 관한 부분이다.
<servlet>
<servlet-name>설정 파일 내부에서 사용되는 임의의 서블릿명</servlet-name>
<servlet-class>실질적으로 요청에 대해 처리될 물리적인 서블릿크래스명</servlet-class>
</servlet>
<servlet-mapping>
<servlet-name>설정파일 내부에서 사용되는 임의의 서블릿명 '<servlet>' 엘리먼트에 정의된 이름과 일치해야 함
</servlet-name>
<url-pattern>url 상에서 실질적으로 요청되는 서블릿명</url-pattern>
</servlet-mapping>
ex)
ServletTest.java
import javax.servlet.*;
import javax.servlet.http.*;
import java.io.*;
import java.util.Calendar;
public class ServletTest extends HttpServlet {
public void doGet (HttpServletRequest request, HttpServletResponse response) throws IOException{
response.setContentType("text/html");
response.setCharacterEncoding("UTF-8");
Calendar c=Calendar.getInstance();
int hour=c.get(Calendar.HOUR_OF_DAY);
int minute=c.get(Calendar.MINUTE);
int second=c.get(Calendar.SECOND);
PrintWriter out =response.getWriter();
out.write("<HTML><HEAD><TITLE>ServletTest</TITLE></HEAD");
out.write("<BODY><H1>");
out.write("Current Time ");
out.write(Integer.toString(hour));
out.write(" hour ");
out.write(Integer.toString(minute));
out.write(" minute ");
out.write(Integer.toString(second));
out.write(" second ");
out.write("</H1></BODY></HTML>");
out.close();
}
}