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

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

[JSP] out ๊ฐ์ฒด

๐Ÿ—ฃ Language/JSP



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


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


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


    1. Out


    JSP ํŽ˜์ด์ง€๊ฐ€ ์ƒ์„ฑํ•˜๋Š” ๋ชจ๋“  ๋‚ด์šฉ์€ out ๊ธฐ๋ณธ ๊ฐ์ฒด๋ฅผ ํ†ตํ•ด์„œ ์ „์†ก๋œ๋‹ค. JSP ํŽ˜์ด์ง€ ๋‚ด์—์„œ ์‚ฌ์šฉ๋˜๋Š” ๋น„-์Šคํฌ๋ฆฝํŠธ ์š”์†Œ๋“ค(์ผ๋ฐ˜์ ์ธ HTML ์ฝ”๋“œ ๋‚ด์ง€ ํ…์ŠคํŠธ)์€ out ๊ธฐ๋ณธ ๊ฐ์ฒด์— ๊ทธ๋Œ€๋กœ ์ „๋‹ฌ๋˜๋ฉฐ, ๊ฐ’์„ ์ถœ๋ ฅํ•˜๋Š” ํ‘œํ˜„์‹์˜ ๊ฒฐ๊ณผ๊ฐ’ ์—ญ์‹œ out ๊ธฐ๋ณธ ๊ฐ์ฒด์— ์ „๋‹ฌ๋œ๋‹ค.



    1-1 out ๊ธฐ๋ณธ ๊ฐ์ฒด์™€ ๋ฒ„ํผ์˜ ๊ด€๊ณ„


    page ๋””๋ ‰ํ‹ฐ๋ธŒ์˜ buffer ์†์„ฑ์„ ์‚ฌ์šฉํ•ด์„œ JSP ํŽ˜์ด์ง€์˜ ๋ฒ„ํผ ํฌ๊ธฐ๋ฅผ ์กฐ์ ˆํ•  ์ˆ˜ ์žˆ๋‹ค. JSP ํŽ˜์ด์ง€๊ฐ€ ์‚ฌ์šฉํ•˜๋Š” ๋ฒ„ํผ๋Š” ์‹ค์ œ๋กœ๋Š” out ๊ธฐ๋ณธ ๊ฐ์ฒด๊ฐ€ ๋‚ด๋ถ€์ ์œผ๋กœ ์‚ฌ์šฉํ•˜๊ณ  ์žˆ๋Š” ๋ฒ„ํผ์ด๋‹ค. ์˜ˆ๋ฅผ ๋“ค์–ด ๋‹ค์Œ๊ณผ ๊ฐ™์ด ๋ฒ„ํผ์˜ ํฌ๊ธฐ๋ฅผ ์„ค์ •ํ–ˆ๋‹ค๋ฉด,


    <%@ page buffer="16kb" %>


    out ๊ธฐ๋ณธ ๊ฐ์ฒด๊ฐ€ ๋‚ด๋ถ€์ ์œผ๋กœ ์‚ฌ์šฉํ•˜๋Š” ๋ฒ„ํผ์˜ ํฌ๊ธฐ๋Š” 16ํ‚ฌ๋กœ๋ฐ”์ดํŠธ๊ฐ€ ๋œ๋‹ค.


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


     ๋ฉ”์„œ๋“œ

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

    ์„ค๋ช… 

    getBufferSize() 

    int 

    ๋ฒ„ํผ์˜ ํฌ๊ธฐ๋ฅผ ๊ตฌํ•œ๋‹ค. 

    getRemaining() 

    int 

    ํ˜„์žฌ ๋ฒ„ํผ์˜ ๋‚จ์€ ํฌ๊ธฐ๋ฅผ ๊ตฌํ•œ๋‹ค. 

    clear() 

    void

    ๋ฒ„ํผ์˜ ๋‚ด์šฉ์„ ๋น„์šด๋‹ค. ๋งŒ์•ฝ ๋ฒ„ํผ๊ฐ€ ์ด๋ฏธ ํ”Œ๋Ÿฌ์‹œ ๋˜์—ˆ๋‹ค๋ฉด IOException์„ ๋ฐœ์ƒ์‹œํ‚จ๋‹ค. 

    clearBuffer() 

    void 

    ๋ฒ„ํผ์˜ ๋‚ด์šฉ์„ ๋น„์šด๋‹ค. clear() ๋ฉ”์„œ๋“œ์™€ ๋‹ฌ๋ฆฌ ์ด๋ฏธ ๋ฒ„ํผ๋ฅผ ํ”Œ๋Ÿฌ์‹œ ํ•œ ๊ฒฝ์šฐ์—๋„ IOException์„ ๋ฐœ์ƒ์‹œํ‚ค์ง€ ์•Š๋Š”๋‹ค.

    flush() 

    void 

    ๋ฒ„ํผ๋ฅผ ํ”Œ๋Ÿฌ์‹œ[๊ฐ์ฃผ:1] ํ•œ๋‹ค. 

    isAutoFlush() 

    boolean 

    ๋ฒ„ํผ๊ฐ€ ๋‹ค ์ฐผ์„ ๋–„ ์ž๋™์œผ๋กœ ํ”Œ๋Ÿฌ์‹œ ํ•  ๊ฒฝ์šฐ true๋ฅผ ๋ฆฌํ„ดํ•œ๋‹ค. (๋ฐ˜ํ™˜ ๊ฐ’์€ page๋””๋ ‰ํ‹ฐ๋ธŒ์—์„œ autoFlush ์†์„ฑ๊ฐ’์œผ๋กœ  ์ง€์ •ํ•œ ๊ฐ’๊ณผ ๊ฐ™๋‹ค.)



    1. ๋ฒ„ํผ๊ฐ€ ๋‹ค ์ฐผ์„ ๋•Œ, ๋ฒ„ํผ์— ์Œ“์ธ ๋ฐ์ดํ„ฐ๋ฅผ ์‹ค์ œ๋กœ ์ „์†ก๋˜์–ด์•ผ ํ•  ๊ณณ์— ์ „์†กํ•˜๊ณ  ๋ฒ„ํผ๋ฅผ ๋น„์šฐ๋Š” ๊ฒƒ์„ ํ”Œ๋Ÿฌ์‹œ๋ผ๊ณ  ํ•œ๋‹ค. [๋ณธ๋ฌธ์œผ๋กœ]