JSP 09/23 (화)

jjade·2025년 9월 22일
0

아파치

  • 서버쪽에서 들어온 요청이 동적페이지인지 정적 페이지인지 파악해주는 역할
  • 단순히 동적인 요청이 들어왔다고 알려주기만 함

톰캣(WAS)

  • 들어온 요청에 따른 서블릿 객체를 메모리에 할당

웹 컨테이너

  • 동적인 연산들을 처리해줄 수 있는 JAVA있는 컨테이너

서블릿

  • 자바가 있는 웹 컨테이너에서 서블릿이 동적인 연산을 처리해줌
  • 톰캣서블릿을 깨움

    로그인 요청 -> 로그인 서블릿 깨움
    로그아웃 요청 -> 로그아웃 서블릿 깨움

  • 들어온 요청에 따른 서블릿 객체의 메서드(service → doGet/doPost)를 실행
  • 자바를 만들 때는 이 하위 폴더에 만들어야 함

web.xml

톰캣이 어떤 객체를 깨워야할지 설명서가 필요함
ex) 로그인 요청 /login 들어왔으니 Login객체 깨워!라고 알려줘야 함



위에가 자바

아래가 화면

📌 서블릿 요청 처리 흐름 정리

1. 화면(클라이언트)에서 요청 전송

예시 HTML 코드:

<form action="/login" method="post">
    <input type="text" name="id">
    <button>로그인</button>
</form>
  • 사용자가 버튼을 누르면 POST 요청 발생

2. 톰캣(Web Container)이 요청 수신

  • URL 매핑을 보고 어떤 서블릿이 처리해야 할지 확인
  • 해당 서블릿 객체를 찾아서 service() 메서드 실행

3. service() → doGet / doPost 호출

  • 요청이 GET이면 → doGet(request, response) 호출
  • 요청이 POST면 → doPost(request, response) 호출

✅ 전체 흐름

브라우저(화면)
   ↓  GET/POST 요청
톰캣(Web Container)
   ↓  service() 실행
서블릿 객체
   ↓
doGet() or doPost() 실행

context path

  • 최상위 프로젝트 폴더의 이름

400번대 에러 - 클라이언트 에러

web.xml 을 확인!

500번대 에러 - 서버에러

자바 코드 확인!


intro.jsp 같은 .jsp파일도 서블릿이다

  • 화면에서 자바를 쓸 수 있음

action : 경로 method : 방식

<form action="/login" method="post">
    <input type="text" name="id">
    <button>로그인</button>
</form>

0개의 댓글