관리 메뉴

IT journey

63일차-65일차 xml(feat.apache tomcat) 본문

끄적끄적/WEB

63일차-65일차 xml(feat.apache tomcat)

step 2021. 10. 4. 16:49
728x90
반응형

html vs xml

html

html은 태그로 구성 되어 있습니다. 만들어진 태그를 사용합니다.

4.01 버전과 5.0 버전의 차이는 독타입입니다.

4.01 은 82ea , 5.0은 102ea 의 태그를 갖고 있습니다.

 

xml

xml은 태그로 구성되어 있습니다. 사용자 정의로 태그를 만듭니다.

xml을 파서가 읽어주는데 그 파서의 위치는 C:\Windows\System32에 있으며, 그 파서로는  msxml3.dll, msxml3r.dll, msxml6.xml, msxml6r.dll 이 있습니다.

 

xml의 작성 규칙

1. 문서의 헤더를 갖습니다

<?xml version="1.0" encoding="UTF-8"?>

<DOCTYPE html>

 

2. 태그(요소, 엘리먼트,노드)는 배열로 되어있습니다. 즉, DOM Tree 로 되어있습니다.

 

3. 루트 태그를 갖고 있습니다.

<사용자정의 태그이름></사용자정의 태그이름>

728x90

xml의 용도

데이터를 이동(데이터 전송, 교환하는) 시키는(태그를 담아서) 환경설정 파일 용도로만 사용합니다.

 

ex) apache-tomcat 서버

conf 디렉토리에서 tomcat 서버 전체에서 적용되는 환경 설정 파일입니다.

(1) server.xml

○ 커넥션 엘리먼트에서는 포트, 인코딩

<Connector

          URIEncoding="EUC-KR"  : 이 탐캣 서버의 컨텍스트에 들어오는 스트림 중

                                            HTTP 프로토콜의 GET 방식으로 들어오는 스트림을

                                            한글로 인코딩하세요.

         connectionTimeout = "20000"

         port = "8088" : 클라이언트에서 웹 서버로 들어가는 포트 설정하기

         protocol = "HTTP/1.1"

         redirectPort="8443"/>

○ 커넥션 엘리먼트에서

독베이스 : doBase : 컨텍스트의 이름 : 이 이클립스 워크스페이스에서 컨텍스가 있는 경로를 의미

,패스 : path : 이 컨텍스트를 찾아오는 상대 가상 경로로, 이는 변경이 가능합니다. 변경해서 사용하는 것이 좋습니다. (보안때문에)

<Context

docBase : "컨텍스트의 이름"

path="/컨텍스트를 찾아오는 상대 가상 경로"

reloadable="true"

source="org.eclipse.jst.jee.server.컨텍스트의 이름"/>

 

(2) context.xml

리소스 엘리먼트로, 이는 데이터 소스입니다. 즉, 데이터베이스 연결정보를 말합니다.

/컨텍스트/WebContent/WEB-INF/web.xml

WebContent 는 이클립스에서 사용하는 가상경로이니 실제 경로에서는 포함하지 않습니다.

<WatchedResource>WEB-INF/web.xml</WatchedResource>

<WatchedResource>$(catalina.base}/conf.web.xml</WatchedResource>

 

스프링할 때 이곳에 datasource를 설정합니다.

<Resource auth="Container" // 컨테이너를 자원 관리자로 기술

                               maxActive="100" // 최대 연결 가능한 Connection 수(기본 20개)

                               maxIdle="30" // Connection pool 유지를 위해 최대 대기 connection 숫자

// 사용 가능한 커넥션이 없을 때 커넥션 회수를 기다리는 시간(1000 = 1초)

                               maxWait = "10000" 

                               type="java.sql.DataSource" // 웹에서 이 리소스를 사용할 때 DataSource 로 리턴

                               name="jdbc/Oracle11g_sid명" // JDBC 이름, 변경 가능

                               driverClassName="oracle:jdbc:driver:OracleDriver" // JDBC 드라이버

                               url="jdbc:oracle:thin:@localhost:포트번호:전역데이터베이스명"

                               username="scott" // 접속계정

                               password:tiger"/> // 접속할 계정 비밀번호

 

(3) web.xml

세션 엘리먼트(세션 시간) 기본 30분

<session-timeout>30</session-timeout>

 

마임 타입 : MIME : Multipurpose Internet Mail Extensions (파일의 형식 지정)

ex. text/html, text/css

이 탐캣 서버에서 mime-mapping 세팅된 마임 타입을 읽어줄 수 있습니다.

<mime-mapping>

            <extension>123</extension>

            <mime-type>application/vnd.lotus-1-2-3</mime-type>

</mime-mapping>

 

/Context/WEB-INF/web.xml 은 해당 컨텍스에만 적용되는 환경설정 파일입니다. (==WEB-INF/web.xml)웰컴 파일 -> <welcome-file>index.jsp</welcome-file>

 

즉, tomcat 서버를 시작하면 server.xml, context.xml, web.xml 등 tomcat 서버 전체를 관장하는 환경설정 파일을 읽고 요청하는 WEB-INF/web.xml 환경설정 파일을 읽은 후에 서비스를 처리합니다.

728x90
반응형

'끄적끄적 > WEB' 카테고리의 다른 글

66일차-69일차 Review와 Ajax,EL, JSTL  (6) 2021.10.13
61일차~62일차 리뷰 및 CSS  (2) 2021.10.03
51일차~60일차  (8) 2021.09.28
50일차 HTTP 프로토콜  (4) 2021.09.12
49일차 jsp&서블릿  (6) 2021.09.06
Comments