[Boostcourse] 풀스택/웹 프로그래밍(풀스택)

JSP 내장객체 { request, response, out, application, page, session }

Ben의 프로그램 2023. 7. 15. 20:51
728x90
수업목표
JSP에서는 개발자가 선언하지 않아도 사용할 수 있는 미리 선언된 변수가 존재합니다. 이를 내장객체라고 합니다. 개발자가 선언하지 않았음에도 어떻게 JSP에서 내장객체를 사용할 수 있는지, 또한 어떻게 사용해야하는지 알아보겠습니다.

 

JSP 내장 객체란? 
JSP는 Servlet 으로 변환된 다음에 Servlet이 실행되는 것이라고 배웠습니다. JSP에 입력한 대부분의 코드는 생성되는 서블릿 소스의 _jspService( ) 메서드 안에 삽입되는 코드로 생성된다. 이때 _jspService( ) 메서드 선언부에 함께 객체들이 있는데, 해당 객체들은 jsp 에서도 사용 가능합니다. response, request, application, session, out 과 같은 인스턴스를 내장객체라고 합니다. 

 

JSP 내장 객체 종류

 

JSP 내장 객체 실습
JSP 내장 객체들을 어떻게 이용하는지 실습을 통해서 알아보겠습니다. 
request 의 getRequestURL( ) 메서드를 사용했습니다. 그런데 이상합니다. Java 코드 안에 request 라는 변수나 객체가 있나요? 없는데도 불구하고 오류가 발생하지 않고 있는 것을 확인할 수 있습니다
코드를 조금 더 작성하였는데요. 위의 코드에서 오류가 발생하지 않는 이유는 현재 우리가 사용하고 있는 request 라는 객체가 우리가 현재 배우고 있는 내장객체이기 때문에 그렇습니다
실행된 화면을 보면 request 라는 내장객체를 사용하여 성공적으로 클라이언트의 요청 URL 을 출력한 것을 확인할 수 있습니다. 

다시 한번 말하지만 JSP의 핵심 내용은 JSP가 Servlet으로 변환된 다음 실행된다는 것입니다. 그런 점에 착안하면 내장 객체도 좀 더 쉽게 이해할 수 있습니다. 

 

출처 : boostcourse 웹 프로그래밍(풀스택) 
https://www.boostcourse.org/web316/lecture/20655?isDesc=false