설치메뉴얼
아파치 톰캣 시작과 폴더 구조 확인
H_u
2024. 6. 27. 17:35
728x90
반응형
SMALL
학습 목표!!!
1. 아파치 톰캣을 실행 시켜 보자.
2. 톰캣 안에 구성되어 있는 각각에 폴더들을 살펴 보자.
3. 서블릿과 JSP 파일 만들어 보기
1. 아파치 톰캣을 실행 시켜 보자
2. 톰캣 안에 구성되어 있는 각각에 폴더들을 살펴 보자
[Tomcat 설치 폴더]
├── bin # 실행 가능한 스크립트 및 실행 파일
├── conf # 구성 파일
├── lib # 톰캣 및 웹 애플리케이션에 필요한 라이브러리
├── logs # 로그 파일
├── temp # 임시 파일
├── webapps # 웹 애플리케이션 파일 (WAR 파일 및 압축 풀린 애플리케이션)
└── work # JSP 컴파일된 파일 및 임시 데이터 저장소
- bin (바이너리): 실행 가능한 스크립트 및 실행 파일이 포함된 곳입니다. 여기에는 톰캣을 시작하고 중지하는 스크립트 등이 있습니다.
- conf (구성): 구성 파일이 있는 곳입니다. 여기에는 서버 설정, 웹 애플리케이션 설정, 사용자 정의 설정 등이 포함됩니다.
- lib (라이브러리): 톰캣 및 웹 애플리케이션에서 사용하는 라이브러리가 있는 곳입니다. 이 라이브러리들은 클래스로더에 의해 로드되어 애플리케이션에 사용됩니다.
- logs (로그): 톰캣의 로그 파일이 저장되는 곳입니다. 이곳에는 서버 작동에 대한 정보, 오류 및 경고 메시지 등이 포함됩니다.
- temp (임시): 임시 파일이 저장되는 곳입니다. 예를 들어, 웹 애플리케이션의 업로드된 파일이 여기에 저장될 수 있습니다.
- webapps (웹 애플리케이션): 웹 애플리케이션 (WAR 파일 또는 압축이 풀린 애플리케이션)이 배치되는 곳입니다. 이 디렉토리에 애플리케이션을 추가하면 톰캣이 자동으로 인식하고 실행합니다.
- work: JSP 파일의 컴파일된 결과 및 임시 데이터가 저장되는 곳입니다. 톰캣은 JSP 파일을 처음 요청할 때 컴파일하여 여기에 저장합니다.
💡 Apache Tomcat 이란?
Apache Tomcat은 Apache Software Foundation에서 개발한 오픈 소스의 웹 애플리케이션 서버입니다.
Tomcat은 자바 Servlet과 JSP를 실행하기 위한 웹 애플리케이션 서버로, 클라이언트의 요청에 대해 정적인 웹 페이지를 제공하거나, Servlet과 JSP 등의 동적인 웹 페이지를 생성하여 제공합니다.
Tomcat은 Apache 웹 서버와 같은 방식으로 동작하며, 클라이언트의 요청을 처리하기 위해 HTTP 프로토콜을 사용합니다. Tomcat은 웹 애플리케이션을 실행하기 위한 웹 컨테이너(Web Container)로서, 서블릿 컨테이너(Servlet Container)와 JSP 컨테이너(JSP Container)를 포함합니다.
Tomcat은 자바 EE(Enterprise Edition) 기술을 사용하여 Servlet, JSP, JDBC 등의 자바 기술들을 사용할 수 있습니다. Tomcat은 다른 웹 서버와 마찬가지로, 웹 서버와 연동하여 사용할 수 있습니다.
또한, Tomcat은 모듈화되어 있어 필요한 기능들을 선택적으로 사용할 수 있습니다.
Tomcat은 무료이며, 오픈 소스로 제공되어 누구나 자유롭게 사용할 수 있습니다. Tomcat은 여러 운영체제에서 실행할 수 있으며, 안정성과 성능면에서 우수한 성능을 발휘합니다.
3. 서블릿과 JSP 파일 만들어 보기
package com.tenco;
import java.io.IOException;
import java.io.PrintWriter;
import jakarta.servlet.ServletException;
import jakarta.servlet.annotation.WebServlet;
import jakarta.servlet.http.HttpServlet;
import jakarta.servlet.http.HttpServletRequest;
import jakarta.servlet.http.HttpServletResponse;
@WebServlet(name = "echo2", urlPatterns = {"/echo2"})
public class Echo2 extends HttpServlet {
public Echo2() {
super();
}
// get 요청 방식
// http://localhost:8080/demo_3/echo2
@Override
protected void doGet(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException {
// request -> req(
System.out.println("doGet 메서드 호출 확인 ");
// 자바.io 객체 (스트림 통해 데이터를 넣을 예정)
PrintWriter pw = resp.getWriter();
pw.print("<!DOCTYPE html>");
pw.print("<html lang=\"en\">");
pw.print("<head>");
pw.print(" <meta charset=\"UTF-8\">");
pw.print(" <meta name=\"viewport\" content=\"width=device-width, initial-scale=1.0\">");
pw.print(" <title>Document</title>");
pw.print("</head>");
pw.print("<body>");
pw.print("<section>");
pw.print("<p style=\"color: red;\" >Hello First Srvlet 반가워</p>");
pw.print("</section>");
pw.print("</body>");
pw.print("</html>");
resp.setContentType("text/html; charset=utf-8");
}
// post 요청 방식
// http://localhost:8080/demo_3/echo2
@Override
protected void doPost(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException {
// TODO Auto-generated method stub
super.doPost(req, resp);
}
}
<%@ page language="java" contentType="text/html; charset=UTF-8"
pageEncoding="UTF-8"%>
<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title>Insert title here</title>
</head>
<body>
<h1>home.jsp 파일 입니다 </h1>
<p>주소 설계 : http://localhost:8080/demo_3/home.jsp</p>
</body>
</html>
728x90
반응형
SMALL