Session ๊ด€๋ฆฌ

2013. 2. 26. 11:23ยทLanguages/JAVA

ํด๋ผ์ด์–ธํŠธ์™€ ์ง€์†์ ์ธ ์—ฐ๊ฒฐ์„ ์œ ์ง€ํ•˜์ง€ ๋ชปํ•˜๋Š” ๊ฒƒ์ด http protocol์˜ ํŠน์ง•์ด๋ฏ€๋กœ, ์ด์ „ ์š”์ฒญํ•œ ํด๋ผ์ด์–ธํŠธ์™€์˜ ์—ฐ๊ฒฐ์„ ์œ ์ง€ํ•˜๊ธฐ ์œ„ํ•ด์„œ Session์„ ์‚ฌ์šฉํ•œ๋‹ค.
์ปจํ…Œ์ด๋„ˆ(ํ†ฐ์บฃ) ๋‹จ์—์„œ Session ID๋ฅผ ๋ฐœํ–‰ํ•˜๊ณ , ํ•ด๋‹น Session ID์™€ Cookie๋ฅผ ๋งตํ•‘ ํ•œ ๋‹ค์Œ ํ•ด๋‹น ์ฟ ํ‚ค๋ฅผ ํด๋ผ์ด์–ธํŠธ์—์„œ ์‚ฌ์šฉํ•˜๋„๋ก ํ•˜๋ฉด ํด๋ผ์ด์–ธํŠธ๋ฅผ ๊ตฌ๋ถ„ํ•ด์„œ ๋ฐ›์„ ์ˆ˜ ์žˆ๋‹ค.

* ์„ธ์…˜ ID๋Š” ๋‹ค์Œ๊ณผ ๊ฐ™์€ ๋ฐฉ๋ฒ•์œผ๋กœ ์‚ฌ์šฉํ•  ์ˆ˜ ์žˆ๋‹ค.

HttpSession session = request.getSession();

์œ„์™€ ๊ฐ™์ด ํ•˜๊ฒŒ ๋˜๋ฉด, request๋กœ๋ถ€ํ„ฐ ์„ธ์…˜ ID๋ฅผ ๊ฐ€์ง€๊ณ  ์˜ฌ ์ˆ˜ ์žˆ๊ณ , ์ œ์ผ ์ฒ˜์Œ ์š”์ฒญ์ด๋ผ๋ฉด response ๊ฐ์ฒด์— ๋ณด๋‚ผ ์ฟ ํ‚ค๋„ ์ƒ์„ฑํ•˜๊ฒŒ ๋œ๋‹ค.

* ์„ธ์…˜์ด ์ด๋ฏธ ์žˆ๋Š”์ง€, ์•„๋‹ˆ๋ฉด ์ฒ˜์Œ ์š”์ฒญ์œผ๋กœ ์ƒˆ๋กญ๊ฒŒ ๋งŒ๋“ค๊ฒŒ ๋˜์—ˆ๋Š”์ง€๋ฅผ ํ™•์ธํ•˜๋ ค๋ฉด ๋‹ค์Œ๊ณผ ๊ฐ™์ด ํ•˜๋ฉด ๋œ๋‹ค.

HttpSession session = request.getSession();

if(session.isNew()) {
    out.println("This is a new session");
} else {
    out.println("Welcome back!");
}

* ํด๋ผ์ด์–ธํŠธ๊ฐ€ ์ฟ ํ‚ค๋ฅผ ์‚ฌ์šฉํ•˜์ง€ ์•Š์„ ๊ฒฝ์šฐ์—๋Š” ์„ธ์…˜ ID๋ฅผ URL ๋’ค์— ๋ถ™์—ฌ ๋ณด๋‚ด์ค˜์„œ ์ฟ ํ‚ค ๋Œ€์‹ ์— URL์„ ํŒŒ์‹ฑํ•ด์„œ ํด๋ผ์ด์–ธํŠธ๋ฅผ ๊ตฌ๋ถ„ํ•˜๊ธฐ๋„ ํ•œ๋‹ค.
URL ๋’ค์— ์„ธ์…˜ ์•„์ด๋””๋ฅผ ๋ถ™์—ฌ ๋ณด๋‚ด๊ธฐ ์œ„ํ•ด์„œ๋Š” ๋‹ค์Œ๊ณผ ๊ฐ™์ด ํ•˜๋ฉด ๋œ๋‹ค.

HttpSession session = reqeust.getSession();

out.printl("<a href=\"" + response.encodeURL("/BeerTest.do") + "\">click me</a>");

์„ธ์…˜์„ ์œ ์ง€ํ•˜๋ฉด์„œ ์š”์ฒญ์„ ๋‹ค๋ฅธ ์„œ๋ธ”๋ฆฟ์ด๋‚˜ JSP๋กœ ๋ณด๋‚ด๊ณ  ์‹ถ์€ ๊ฒฝ์šฐ์—๋Š” encodeRedirectURL()์„ ์‚ฌ์šฉํ•˜๋ฉด ๋œ๋‹ค.

* ์˜ค๋ž˜๋œ ์„ธ์…˜์€ ์„ธ์…˜ ํƒ€์ž„์•„์›ƒ์„ web.xml์— ์„ค์ •ํ•˜์—ฌ ์ „์ฒด ์„ธ์…˜์— ์ ์šฉํ•ด์„œ ์‚ฌ์šฉํ•˜๊ฑฐ๋‚˜, ๋ฉ”์†Œ๋“œ๋ฅผ ์‚ฌ์šฉํ•˜์—ฌ ํŠน์ • ์„ธ์…˜์—์„œ๋งŒ ์‚ฌ์šฉํ•  ์ˆ˜ ์žˆ๋‹ค.
์‚ฌ์šฉ ๋ฐฉ๋ฒ•์€ ๋‹ค์Œ๊ณผ ๊ฐ™๋‹ค.

web.xml์—์„œ ์‚ฌ์šฉํ•˜๋Š” ๋ฐฉ๋ฒ•

  <session-config>
      <session-timeout>15</session-timeout>
  </session-config>

ํŠน์ • ์„ธ์…˜์—์„œ๋งŒ ์‚ฌ์šฉํ•˜๋Š” ๋ฐฉ๋ฒ•

session.setMaxInactiveInterval(20*60);

web.xml์—์„œ๋Š” ๋ถ„ ๋‹จ์œ„๋กœ ์ ์„ ์ˆ˜ ์žˆ๊ณ , setMaxInactiveInterval์˜ ์ธ์ž๊ฐ’์œผ๋กœ ์‚ฌ์šฉํ•  ๊ฒฝ์šฐ์—๋Š” ์ดˆ ๋‹จ์œ„๋กœ ์‚ฌ์šฉํ•  ์ˆ˜ ์žˆ๋‹ค.
์œ„์˜ ๊ฒฝ์šฐ์—๋Š” 15๋ถ„ ๋˜๋Š” 20๋ถ„์ด๋ผ๋Š” ์˜๋ฏธ์ด๋‹ค.


์ถœ์ฒ˜ : http://carismahun.tistory.com/62

728x90
์ €์ž‘์žํ‘œ์‹œ ๋น„์˜๋ฆฌ ๋ณ€๊ฒฝ๊ธˆ์ง€ (์ƒˆ์ฐฝ์—ด๋ฆผ)
'Languages/JAVA' ์นดํ…Œ๊ณ ๋ฆฌ์˜ ๋‹ค๋ฅธ ๊ธ€
  • [JAVA]ํŠน์ˆ˜๋ฌธ์ž๋ฅผ ์›ํ•˜๋Š” ๋ฌธ์ž์—ด๋กœ ๋ณ€ํ™˜
  • [java]ํŠน์ˆ˜๋ฌธ์ž์˜ ์กด์žฌ์—ฌ๋ถ€
  • java ์ด์ค‘๋กœ๊ทธ์ธ ๊ธˆ์ง€
  • java json convert to List
์ง€๋‹ˆ๐Ÿงž‍โ™‚๏ธ๐Ÿฅญ
์ง€๋‹ˆ๐Ÿงž‍โ™‚๏ธ๐Ÿฅญ
์ผ์ƒ, ๊ฒŒ์ž„, ๋ง›์ง‘, ์—ฌํ–‰, ๊ฐœ๋ฐœ, IT ๋ธ”๋กœ๊ทธ๐Ÿงž
  • ์ง€๋‹ˆ๐Ÿงž‍โ™‚๏ธ๐Ÿฅญ
    ์š”์ˆ  ๋žจํ”„๐Ÿซ–
    ์ง€๋‹ˆ๐Ÿงž‍โ™‚๏ธ๐Ÿฅญ
  • ์ „์ฒด
    ์˜ค๋Š˜
    ์–ด์ œ
    • All (549)
      • Languages (57)
        • JAVA (13)
        • JSP (1)
        • C_C++ (4)
        • Html (3)
        • CSS (1)
        • JavaScript (18)
        • Python (3)
        • Kotlin (13)
        • TypeScript (1)
      • Framework (14)
        • spring (11)
        • jstl (1)
        • angular (2)
      • Tool (28)
        • Eclipse (5)
        • vsCode (3)
        • scrcpy (2)
        • Git (1)
        • IntelliJ (6)
        • Visual-studio (1)
        • UML (1)
        • Gradle (8)
      • DB (6)
        • Oracle (1)
        • MySql (3)
        • Mongo (2)
      • OS (14)
        • Linux (2)
        • Windows (12)
      • Server (8)
        • Tomcat (1)
        • Apache (1)
        • Node.js (6)
      • Programmings (25)
        • Design Pattern (2)
        • Funny (20)
        • Algorithms (3)
      • Cloud (8)
        • Docker (1)
        • Kubernetes (4)
        • Istio (1)
        • ArgoCD (2)
      • IT (5)
        • gRPC (3)
        • RESTful (3)
        • Web UI (5)
        • AI (4)
      • Book (6)
      • TIP (187)
      • Life (53)
      • Game (83)
      • Storage (22)
      • ์‹๋‹น (15)
  • ๋ธ”๋กœ๊ทธ ๋ฉ”๋‰ด

    • ํ™ˆ
    • ํƒœ๊ทธ
    • ๋ฐฉ๋ช…๋ก
    • ์‚ฌ์ดํŠธ๋งต
    • RSS
    • ๊ธฐํƒ€ ์†Œ๋“
  • ๋งํฌ

    • ๊ตฌ๊ธ€
    • ๋„ค์ด๋ฒ„
    • ์ •๋ถ€24
    • Spring Framework ๋ฆด๋ฆฌ์ฆˆ ๋…ธํŠธ
    • Kotlin ๋ฆด๋ฆฌ์ฆˆ ๋…ธํŠธ
    • ์นด์นด์˜ค ์• ๋“œํ•
    • ๋ธ”๋กœ๊ทธ ์‚ฌ์ดํŠธ๋งต
    • ๋ธ”๋กœ๊ทธ RSS
  • ๊ณต์ง€์‚ฌํ•ญ

    • ์•ˆ๋…•ํ•˜์„ธ์š”
  • ์ธ๊ธฐ ๊ธ€

  • ํƒœ๊ทธ

    ํ€˜์ŠคํŠธ
    ์˜ค๋Š˜์˜๋‰ด์Šค
    ๋ฐ์ผ๋ฆฌ ๋‰ด์Šค
    ๋ชฌ์Šคํ„ฐํ—Œํ„ฐ์™€์ผ์ฆˆ
    ๋‰ด์Šค ๋ธŒ๋ฆฌํ•‘
    ํƒœ๊ตญ
    ๋ธŒ๋ฆฌํ•‘
    ํ•œ๋ˆˆ์— ๋ณด๋Š” ์˜ค๋Š˜์˜ ๋‰ด์Šค
    ๋‰ด์Šค
    ๋ชฌ์Šคํ„ฐํ—Œํ„ฐ๋‚˜์šฐ
  • ์ตœ๊ทผ ๋Œ“๊ธ€

  • ์ตœ๊ทผ ๊ธ€

  • hELLOยท Designed By์ •์ƒ์šฐ.v4.10.3
์ง€๋‹ˆ๐Ÿงž‍โ™‚๏ธ๐Ÿฅญ
Session ๊ด€๋ฆฌ
์ƒ๋‹จ์œผ๋กœ

ํ‹ฐ์Šคํ† ๋ฆฌํˆด๋ฐ”