★ MILESTONE · WEB · v0

Hello Servlet

Spring 기초
SMHRD

학습 목표 — v0

1. Servlet — 가장 단순한 동적 응답

자바로 동적 응답을 만드는 가장 단순한 단위. Spring 도 사실은 Servlet 위에 얹힌 거대한 도우미입니다.

@WebServlet("/hello")
public class HelloServlet extends HttpServlet {
    protected void doGet(HttpServletRequest req,
                         HttpServletResponse resp) throws IOException {
        resp.setContentType("text/html;charset=UTF-8");
        resp.getWriter().write("<h1>Hello, World</h1>");
    }
}

2. 실행 흐름

① 브라우저 : GET /hello ② Tomcat : @WebServlet("/hello") 가 붙은 Servlet 찾음 ③ Tomcat : HelloServlet.doGet() 호출 ④ Servlet : 응답에 HTML 적음 ⑤ Tomcat : HTTP 응답으로 변환해 전송 ⑥ 브라우저 : 화면에 "Hello, World"

3. 실습 단계

  1. Eclipse → Preferences → Server Runtime Environments → Tomcat 등록
  2. File → New → Dynamic Web Project (이름: hello-web)
  3. src/hello/HelloServlet.java 작성 (위 코드)
  4. Run on Server → Tomcat 선택
  5. 크롬에서 http://localhost:8080/hello-web/hello 접속

4. 자주 만나는 오류

증상원인
404 Not FoundURL 경로 오타. 컨텍스트 이름 확인.
500 Server ErrorServlet 코드 안 예외. Console 스택 트레이스 확인.
한글 깨짐charset=UTF-8 누락.
포트 충돌8080 사용 중. Tomcat server.xml 에서 포트 변경.

5. v0 의 의미

출발점: 오늘부터 우리 프로젝트는 v0 → v∞ 로 진화합니다. 이 단순한 Hello 한 줄이 그 첫 박스입니다.

앞으로의 진화:

6. Before / After

Part 1 시작

웹의 동작 원리를 이론으로만 안다.

v0 (Part 1 끝)

내 자바 코드가 Tomcat 위에서 돌아가고, 응답을 브라우저에서 직접 본다.

학습 확인 체크리스트