오늘은 이클립스 같은 개발자도구의 도움없이 리눅스 터미널창을 통해 서버를 만드는 법을 알아보겠습니다.
- 자바설치
- 톰캣설치
- 여러 환경설정
- 코드 작성 및 수동으로 컴파일
- 서버 켜기 및 결과 확인
1.자바설치
아래 링크에서 원하는 자바파일을 다운받으세요

제 경우에는 Arm 64 Compressed Archive를 받았습니다.
이것을 압축을 푼 후 원하는 위치에 가져다 놓으세요.

저는 그냥 홈(절대경로:/home/사용자계정)디렉토리에 두었습니다.
2. 톰캣설치
이번엔 https://tomcat.apache.org/ 이 링크에 들어가신 후 좌측 다운로드란의 원하는 톰캣버전을 선택해주세요.

제 경우 Tomcat9버전을 선택했습니다.
버전을 선택했으면 core의 tar.gz파일을 다운받으세요.
그리고 이 또한 압축을 풀어서 원하는 위치에 갖다 놓으세요.

저는 이번에도 홈 디렉터리에 두었습니다.
3. 여러 환경설정
먼저 apache-tomcat-9.0.65/lib 에 있는 servlet-api.jar파일을 복사해서

jdk-18.0.2.1/lib 에 붙여넣기 합시다.

그다음 경로설정을 위해서 /etc/profile에 다음과 같은 문구를 삽입해야 합니다.
콘솔창을 키신 다음 sudo open /etc/profile을 입력해줍니다.(보통은 vi 텍스트 편집기를 쓰겠지만 저는 우분투에서 자체 제공하는 텍스트편집기를 사용하겠습니다)
편집기가 켜지면 텍스트의 맨 아래에다 위 문구를 작성해주세요.
저장을 하신다음 콘솔창에
echo $JAVA_HOME
echo $CLASSPATH
echo $CATALINA
를 입력하시면 환경변수가 잘 변경되었는지 확인해보실 수 있습니다.
(만일 변경되지 않았다면 source /etc/profile 을 입력하고 다시 시도해보세요)
다음엔 apache-tomcat-9.0.65/webapps에다 Web Application Structure를 만들어 봅시다.
webapps아래에 HelloWorld라는 파일을 만들고

그아래 WEB-INF라는 폴더를 만듭니다.

그 아래에 다시 src, classes, lib 폴더를 만듭니다.

이후 apache-tomacat-9.0.65/webapps/ROOT 의 web.xml을 복사하여 아까 만든 HelloWorld/WEB-INF에 붙여넣습니다.

4. 코드작성 및 수동으로 컴파일
src 폴더 안에 다음과 같이 텍스트문서를 작성하고 파일이름을 HelloWorld.java 로 저장하세요
import javax.servlet.*;
import javax.servlet.http.*;
import java.io.*;
public class HelloWorld extends HttpServlet{
public void doGet(HttpServletRequest request, HttpServletResponse response) throws IOException{
response.setContentType("text/html");
response.setCharacterEncoding("euc-kr");
PrintWriter out = response.getWriter();
out.write("<HTML><HEAD><TITLE>HelloWorld</TITLE></HEAD>");
out.write("<BODY><H1>");
out.write("Hello World");
out.write("</H1></BODY></HTML>");
out.close();
}
}
그 다음은 web.xml파일에 매핑을 해줘야 합니다.
WEB-INF 폴더에 있는 web.xml 파일을 켜시고 다음과 같은 코드를 작성합니다.
<servlet>
<servlet-name>HelloWorld</servlet-name>
<servlet-class>HelloWorld</servlet-class>
</servlet>
<servlet-mapping>
<servlet-name>HelloWorld</servlet-name>
<url-pattern>/sayhi</url-pattern>
</servlet-mapping>
그 다음 터미널을 켜서 해당 파일이 저장되어 있는 위치로 이동합니다. 이후
javac HelloWorld.java
를 입력해줍니다. 에러문구가 없으면 컴파일이 잘 된 것입니다.
src폴더를 확인해 보시면 HelloWorld.class라는 파일이 생겼을 것입니다.

이것을 classes폴더로 옮겨줍니다.

5. 서버켜기 및 결과확인
다시 터미널 창으로 가서 apache-tomacat-9.0.65/bin 폴더로 이동합니다.

이어서 ./startup.sh를 입력하면 서버가 실행됩니다.
(나중에 잊지말고 ./shutdown.sh를 입력해서 서버를 꺼줍시다.)
웹브라우저에 가서 localhost:8080/HelloWorld/sayhi 주소를 입력하면 결과를 확인해 보실 수 있습니다.

'네트워크' 카테고리의 다른 글
HTTPS 특징 (0) | 2022.09.28 |
---|---|
web.xml ? (0) | 2022.09.28 |
HTTP 상태코드 표 (0) | 2022.09.28 |
쿠키와 세션 +캐시 (0) | 2022.09.28 |
OSI 7계층 (1) | 2022.09.28 |