본문 바로가기
몰입형학습

web.xml 정리

by jackypark 2022. 9. 16.

Web.xml이란?

  • Web Application의 Deployment Descriptor(환경 파일 : 배포 서술자, DD파일)로서 XML 형식의 파일
  • 모든 Web application은 반드시 하나의 web.xm l파일을 가져야 함
  • 위치 : WEB-INF 폴더 아래
  • web.xml 파일의 설정들은 Web Application 시작시 메모리에 로딩됨. (수정을 할 경우 web application을 재시작해야 함.)

예시를 저번 프로젝트 때 한 유기동물 사이트 web.xml파일로 설명하겠다.

<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_4_0.xsd"
	version="4.0">
	<display-name>ThrowsGG</display-name>
	<welcome-file-list>
		<welcome-file>index.html</welcome-file>
	</welcome-file-list>
		<security-role>
		<description></description >
		<role-name>admin</role-name>
	</security-role>
	
	<security-constraint>
		<display-name>WebMarket Security</display-name>
		<web-resource-collection>
			<web-resource-name>WebMarket</web-resource-name>
			<description></description>
			<url-pattern>/addProduct.jsp</url-pattern>
			<url-pattern>/editProduct.jsp</url-pattern>
		</web-resource-collection>
		<auth-constraint>
			<description>권한 관리자명</description>
			<role-name>admin</role-name>
		</auth-constraint>
	</security-constraint>
	
	<login-config>
		<auth-method>FORM</auth-method>
		<form-login-config>
			<form-login-page>/login.jsp</form-login-page>
			<form-error-page>/login_failed.jsp</form-error-page>
		</form-login-config>
	</login-config>
	
	<servlet>
		<servlet-name>BoardController</servlet-name>
		<servlet-class>mvc.controller.BoardController</servlet-class>
	</servlet>
	
	<servlet-mapping>
		<servlet-name>BoardController</servlet-name>
		<url-pattern>*.do</url-pattern>	
	</servlet-mapping>
</web-app>

우선 내가 사용한 태그들부터 설명하겠다.

처음으로 

<display-name> 프로젝트명 </display-name> : web.xml 파일이 속한 프로젝트의 이름을 적는다.

<welcome-file-list>
<welcome-file> index.html </welcome-file>

<description> : 어떤 프로젝트를 위한 배포 서술자인지 상세하게 기록한다.(이 프로젝트에선 부연설명을 안 했었다,)

</welcome-file-list> : 클라이언트의 사용자가 웹 브라우저로 웹 서버에 접속할 때 기본적으로 보여주는 메인 페이지이다.

<security-role>: 통합개발 환경에서 보안 정보를 좀 더 조작하기 쉽게 만들어준다. <login-config>와 연결하여 사용

<login-config>: 보안된 페이지로 들어가려는 사용자에 대한 서버의 인증방식을 지정해준다.

보안 관련 태그에 부가 설명은 출처로 남기겠다

https://keichee.tistory.com/333

 

[JSP] Security ( 보안 )

JSP와 servlets 은 Web 개발자들을 위해서 보안(인증)을 처리할 수 있는 다양한 방법을 제공합니다. 오늘은 그 중 두가지에 대해서만 알아보도록 하겠습니다. 역할 기반 인증 servlet 에서 제공하는 역

keichee.tistory.com

그리고 마지막으로 제일 흔한 맵핑 방법 중 하나인

  • <servlet> : 등록하고자 하는 서블릿을 설정한다. <init-param>으로 해당 Servlet에서만 사용할 수 있는 파라미터를 설정한다.
  • <servlet-maping>: 등록한 서블릿을 웹브라우저에서 호출하면서 사용하는 이름을 등록하는 코드이다.

 

여기서 안 쓴 태그도 많다 주요 태그에 대한 설명은 링크를 남기도록 하겠다.

<filter>: WebApplication 전반에 걸쳐 특정  url이나 피일 요청 시 먼저 로딩되어 필터링을 해준다

<error-page>:404,500 등 err-code발생 시 내가 만든 에러 페이지로 넘어갈게 설정할 수 있다.

 

이외에도 다양한 태그가 더있지만 좀더 공부하여서 코딩하면서 알아가야겠다.. 열심히 해서 잘 다뤘으면 좋겠다..

 

'몰입형학습' 카테고리의 다른 글

개인정보 암호화 해서 DB에 저장하기  (0) 2022.10.14
HTTPServlet 클래스  (0) 2022.09.15
HTTP 와 HTTPS 차이  (4) 2022.09.15
HTTP 상태코드  (0) 2022.09.15
[JAVA]멀티캐스팅을 이용한 채팅 프로그램  (0) 2022.09.06

댓글