๋ณธ๋ฌธ ๋ฐ”๋กœ๊ฐ€๊ธฐ

๋ชฉ๋ก์ด ์—†์Šต๋‹ˆ๋‹ค.

[JSP] pageContext ๊ฐ์ฒด

๐Ÿ—ฃ Language/JSP



    JSP์—์„œ๋Š” ๊ฐ์ฒด๋ฅผ ์„ ์–ธํ•˜์ง€ ์•Š๊ณ ๋„ ๊ฐ์ฒด๊ณผ ์—ฐ๊ด€๋œ ๋ฉ”์„œ๋“œ๋“ค์„ ํ•จ๊ป˜ ์‚ฌ์šฉํ•  ์ˆ˜ ์žˆ๋Š” ๊ฐ์ฒด๋“ค์ด ์žˆ๋‹ค. ์ด๋ฅผ Implicit Instance(๊ธฐ๋ณธ๊ฐ์ฒด , ๋‚ด์žฅ๊ฐ์ฒด) ๋ผ๊ณ  ํ•œ๋‹ค. 


    ์ข…๋ฅ˜๋ฅผ ์ •๋ฆฌํ•ด๋†“์€ ๋งํฌ >> Implict Instance 


    ์ด ์ค‘์—์„œ ์˜ค๋Š˜์€ pageContext ๋Œ€ํ•ด์„œ ์ •๋ฆฌํ•˜๋ ค๊ณ  ํ•œ๋‹ค.


    1. pageContext


    pageContext ๊ธฐ๋ณธ ๊ฐ์ฒด๋Š” ํ•˜๋‚˜์˜ JSP ํŽ˜์ด์ง€์™€ 1:1 ๋งคํ•‘๋˜๋Š” ๊ฐ์ฒด๋กœ์„œ, ๋‹ค์Œ๊ณผ ๊ฐ™์€ ๊ธฐ๋Šฅ์„ ์ œ๊ณตํ•œ๋‹ค.


    ๋‹ค๋ฅธ ๊ธฐ๋ณธ ๊ฐ์ฒด ๊ตฌํ•˜๊ธฐ


    ์†์„ฑ ์ฒ˜๋ฆฌํ•˜๊ธฐ


    ํŽ˜์ด์ง€์˜ ํ๋ฆ„ ์ œ์–ดํ•˜๊ธฐ


    ์—๋Ÿฌ ๋ฐ์ดํ„ฐ ๊ตฌํ•˜๊ธฐ



    ์ด๋Ÿฌํ•œ ๊ธฐ๋Šฅ๋“ค์„ JSP ํŽ˜์ด์ง€์—์„œ ์ง์ ‘ ์‚ฌ์šฉํ•˜๋Š” ๊ฒฝ์šฐ๋Š” ๋“œ๋ฌผ๋‹ค. ํ•˜์ง€๋งŒ ํ›„์— ์ž๊ธฐ๋งŒ์˜ ํƒœ๊ทธ๋ฅผ ๋งŒ๋“ค ๋•Œ ๋งŽ์ด ์‚ฌ์šฉ๋˜๊ธฐ ๋•Œ๋ฌธ์— ๋ฐœ์ „๋œ JSP ํ”„๋กœ๊ทธ๋ž˜๋ฐ์„ ํ•˜๊ธฐ ์œ„ํ•ด์„œ๋Š” pageContext ๊ธฐ๋ณธ ๊ฐ์ฒด๊ฐ€ ์ œ๊ณตํ•˜๋Š” ๊ธฐ๋Šฅ์„ ์ตํ˜€ ๋‘์–ด์•ผ ํ•œ๋‹ค.


    1-1 ๊ธฐ๋ณธ ๊ฐ์ฒด ์ ‘๊ทผ ๋ฉ”์„œ๋“œ


    pageContext๋Š” ๋‹ค์Œ๊ณผ ๊ฐ™์€ ๊ธฐ๋ณธ ๊ฐ์ฒด์— ์ ‘๊ทผํ•  ์ˆ˜ ์žˆ๋Š” ๋ฉ”์„œ๋“œ๋ฅผ ์ œ๊ณตํ•˜๊ณ  ์žˆ๋‹ค.


     ๋ฉ”์„œ๋“œ

    ๋ฆฌํ„ด ํƒ€์ž… 

    ์„ค๋ช… 

    getRequest() 

     ServletRequest

     request ๊ธฐ๋ณธ ๊ฐ์ฒด๋ฅผ ๊ตฌํ•œ๋‹ค.

    getResponse() 

    ServletResponse 

    response ๊ธฐ๋ณธ ๊ฐ์ฒด๋ฅผ ๊ตฌํ•œ๋‹ค. 

    getSession() 

    HttpSession 

    session ๊ธฐ๋ณธ ๊ฐ์ฒด๋ฅผ ๊ตฌํ•œ๋‹ค. 

    getServletContext() 

    ServletContext 

    application ๊ธฐ๋ณธ ๊ฐ์ฒด๋ฅผ ๊ตฌํ•œ๋‹ค 

    getServletConfig() 

    ServletConfig 

    config ๊ธฐ๋ณธ ๊ฐ์ฒด๋ฅผ ๊ตฌํ•œ๋‹ค. 

    getOut() 

    JspWriter 

    out ๊ธฐ๋ณธ ๊ฐ์ฒด๋ฅผ ๊ตฌํ•œ๋‹ค. 

    getException() 

    Exception 

    exception ๊ธฐ๋ณธ ๊ฐ์ฒด๋ฅผ ๊ตฌํ•œ๋‹ค. 

    getPage() 

    Object 

    page ๊ธฐ๋ณธ ๊ฐ์ฒด๋ฅผ ๊ตฌํ•œ๋‹ค. 

    โ€ปgetException() ๋ฉ”์„œ๋“œ๋Š” JSP ํŽ˜์ด์ง€๊ฐ€ ์—๋Ÿฌ ํŽ˜์ด์ง€์ธ ๊ฒฝ์šฐ์—๋งŒ ์˜๋ฏธ๊ฐ€  ์žˆ๋‹ค.



    ์—ฌ๊ธฐ์„œ ์ค‘์š”ํ•œ ์ ์€ getRequest() ๋ฉ”์„œ๋“œ์™€ getResponse() ๋ฉ”์„œ๋“œ๋Š” ์‚ฌ์šฉํ•  ๋•Œ์— ์•Œ๋งž๊ฒŒ ํƒ€์ž… ๋ณ€ํ™˜์„ ํ•ด์ฃผ์–ด์•ผ ํ•œ๋‹ค. ์˜ˆ๋ฅผ ๋“ค์–ด, getRequest() ๋ฉ”์„œ๋“œ์˜ ๋ฆฌํ„ด ํƒ€์ž…์ด ServletRequest์ธ๋ฐ, HTTP ์š”์ฒญ์„ ์ฒ˜๋ฆฌํ•˜๋Š” ๊ฒฝ์šฐ์—๋Š” ๋‹ค์Œ๊ณผ ๊ฐ™์ด HttpServletRequest๋กœ ํ˜•๋ณ€ํ™˜์„ ํ•œ ํ›„์— ์‚ฌ์šฉํ•ด ์ฃผ์–ด์•ผ ํ•œ๋‹ค.


    HttpServletRequest httpRequest = (HttpServletRequest)pageContext.getRequest();

    โ€ป getResponse() ๋ฉ”์„œ๋“œ๋„ ๋งˆ์ฐฌ๊ฐ€์ง€. JSP ํŽ˜์ด์ง€๊ฐ€ HTTP ์ฒ˜๋ฆฌ๋ฅผ ํ•  ๋•Œ๋Š” ๋ฐ˜๋“œ์‹œ ํ˜•๋ณ€ํ™˜์„ ํ•ด์ฃผ์–ด์•ผ ๊ฐ™์€ ๊ฐ์ฒด๋กœ ์ธ์‹์ด ๋จ.