servletμ—λŠ” main() λ©”μ†Œλ“œκ°€ μ—†λ‹€.

2023. 10. 20. 13:52Β· π™ΉπšŠπšŸπšŠ
λͺ©μ°¨
  1. ❓ κΆκΈˆμ¦β“
  2. Servletμ΄λž€?
  3. Servlet의 νŠΉμ§•
  4. main λ©”μ„œλ“œκ°€ μ—†λŠ” 이유
  5. μ›Ή ν΄λΌμ΄μ–ΈνŠΈ ↔ μ„œλ²„μ˜ 흐름
λ°˜μ‘ν˜•

❓ κΆκΈˆμ¦β“

μžλ°”λ‘œ 웹을 λ§Œλ“  적이 μžˆλ‹€λ©΄ servlet을 μ‚¬μš©ν–ˆμ„ 것이닀.

근데 servletμ—λŠ” main() λ©”μ†Œλ“œκ°€ μ—†λ‹€.

μ™œ μ—†μ„κΉŒ?

 

κΆκΈˆμ¦μ„ μ•ˆκ³  μ°Ύμ•„λ³΄κ²Œ λ˜μ—ˆλ‹€.

(정닡은 : μ»¨ν…Œμ΄λ„ˆκ°€ μ„œλΈ”λ¦Ώμ˜ 생λͺ…μ£ΌκΈ° κ΄€λ ¨ λ©”μ†Œλ“œλ₯Ό ν˜ΈμΆœν•΄ μ£ΌκΈ° λ•Œλ¬Έμ— main λ©”μ†Œλ“œκ°€ 없어도 잘 λŒμ•„κ°€λŠ” 것이닀.)

 

 

 

 

 

 

 

Servletμ΄λž€?

μžλ°” μ–Έμ–΄λ₯Ό 기반으둜 μ›Ή μ• ν”Œλ¦¬μΌ€μ΄μ…˜μ„ κ°œλ°œν•˜κΈ° μœ„ν•œ ν”Œλž«νΌ-독립적인 μ„œλ²„μΈ‘ ν”„λ‘œκ·Έλž˜λ° κΈ°μˆ μ΄λ‹€.

즉, μžλ°”λ₯Ό μ‚¬μš©ν•˜μ—¬ 웹을 λ§Œλ“€κΈ° μœ„ν•΄ ν•„μš”ν•œ κΈ°μˆ μ΄λ‹€.

 

 

 

 

Servlet의 νŠΉμ§•

1️⃣ ν”Œλž«νΌ 독립성

μ„œλΈ”λ¦Ώμ€ Java둜 μž‘μ„±λ˜λ©°, JVM(Java Virtual Machine)μ—μ„œ μ‹€ν–‰λœλ‹€.

λ”°λΌμ„œ, λ‹€μ–‘ν•œ ν”Œλž«νΌμ—μ„œ λ™μž‘ν•˜λ©°, μ›Ή μ• ν”Œλ¦¬μΌ€μ΄μ…˜μ˜ 이식성을 λ†’μ—¬μ€€λ‹€.

 

2️⃣ μ›Ή μš”μ²­ 처리

μ„œλΈ”λ¦Ώμ€ HTTP μš”μ²­κ³Ό 응닡을 μ²˜λ¦¬ν•˜λŠ” 데 주둜 μ‚¬μš©λœλ‹€.

 

3️⃣ 생λͺ…μ£ΌκΈ° 관리

μ»¨ν…Œμ΄λ„ˆκ°€ μ„œλΈ”λ¦Ώμ˜ 생λͺ…μ£ΌκΈ°λ₯Ό κ΄€λ¦¬ν•œλ‹€.

μ„œλΈ”λ¦Ώμ€ μ΄ˆκΈ°ν™”, μ„œλΉ„μŠ€ 처리, μ†Œλ©Έκ³Ό 같은 단계λ₯Ό 거쳐 μš”μ²­μ„ μ²˜λ¦¬ν•œλ‹€.

 

4️⃣ μŠ€λ ˆλ“œ μ•ˆμ „μ„±

각 ν΄λΌμ΄μ–ΈνŠΈ μš”μ²­μ— λŒ€ν•΄ λ³„λ„μ˜ μŠ€λ ˆλ“œλ₯Ό μƒμ„±ν•˜μ—¬ μ²˜λ¦¬ν•˜λ―€λ‘œ, μ„œλΈ”λ¦Ώμ€ 기본적으둜 λ©€ν‹°μŠ€λ ˆλ“œ ν™˜κ²½μ—μ„œ μ•ˆμ „ν•˜κ²Œ λ™μž‘ν•œλ‹€.

(λ³„λ„μ˜ μŠ€λ ˆλ“œλ₯Ό μƒμ„±ν•˜λ©΄, λ‹€λ₯Έ ν΄λΌμ΄μ–ΈνŠΈ μš”μ²­ 간에 μ„œλ‘œμ˜ λ°μ΄ν„°λ‚˜ μƒνƒœμ— λŒ€ν•œ 영ν–₯을 μ£Όμ§€ μ•ŠκΈ° λ•Œλ¬Έμ΄λ‹€.)

 

5οΈβƒ£μž¬μ‚¬μš©μ„±

μ„œλΈ”λ¦Ώμ€ Java 클래슀둜 κ΅¬ν˜„λ˜λ©°, μ½”λ“œ μž¬μ‚¬μš©μ„ μ΄‰μ§„ν•œλ‹€.

 

 

 

 

main λ©”μ„œλ“œκ°€ μ—†λŠ” 이유

일반적인 μžλ°” 독립 μ‹€ν–‰ν”„λ‘œκ·Έλž¨κ³Ό 달리 main λ©”μ„œλ“œκ°€ μ—†μœΌλ©°, μ„œλΈ”λ¦Ώ μ»¨ν…Œμ΄λ„ˆμ— λ“±λ‘λœ ν›„ μ„œλΈ”λ¦Ώ μ»¨ν…Œμ΄λ„ˆμ— μ˜ν•΄ 생성, 호좜, μ†Œλ©Έμ΄ 이루어진닀.

μ„œλΈ”λ¦Ώ μ»¨ν…Œμ΄λ„ˆκ°€ μ„œλΈ”λ¦Ώμ˜ 생λͺ…μ£ΌκΈ° 관리, μŠ€λ ˆλ”© 및 μš”μ²­/응닡 관리λ₯Ό μ²˜λ¦¬ν•˜λ―€λ‘œ, μ„œλΈ”λ¦Ώ ν΄λž˜μŠ€μ— main() λ©”μ„œλ“œκ°€ ν•„μš”ν•˜μ§€ μ•Šλ‹€.

μ„œλΈ”λ¦Ώμ€ μ›Ή μ• ν”Œλ¦¬μΌ€μ΄μ…˜μ˜ μΌλΆ€λ‘œ μ„œλ²„ λ‚΄μ—μ„œ μ‹€ν–‰λ˜λ―€λ‘œ main() λ©”μ„œλ“œ λŒ€μ‹  μ›Ή μ• ν”Œλ¦¬μΌ€μ΄μ…˜ μ„œλ²„μ—μ„œ μ œμ–΄λœλ‹€.

 

 

 

 

 

 

 

 

μ›Ή ν΄λΌμ΄μ–ΈνŠΈ ↔ μ„œλ²„μ˜ 흐름

 

ν΄λΌμ΄μ–ΈνŠΈμ˜ μš”μ²­μ„ μ›Ή μ„œλ²„κ°€ λ°›λŠ”λ‹€.

μ›Ή μ„œλ²„λŠ” λ°”λ‘œ μ„œλΈ”λ¦Ώμ„ ν˜ΈμΆœν•˜λŠ” 것이 μ•„λ‹ˆλΌ μ„œλΈ”λ¦Ώμ„ κ΄€λ¦¬ν•˜λŠ” μ»¨ν…Œμ΄λ„ˆμ—κ²Œ μš”μ²­μ„ λ„˜κΈ°λŠ” 것이닀.

κ·Έλ ‡κ²Œ μš”μ²­μ„ λ„˜κ²¨λ°›μ€ μ»¨ν…Œμ΄λ„ˆλŠ” HTTP Request와 HTTP Response 객체 μƒμ„±ν•˜κ³ , μ„œλΈ”λ¦Ώμ˜ doGet() λ˜λŠ” doPost() λ©”μ„œλ“œ 쀑 ν•˜λ‚˜λ₯Ό ν˜ΈμΆœν•œλ‹€.

 

 

 

 

 

 

 

 

 

 

 

https://namsieon.com/207

 

[JSP] μ„œλΈ”λ¦Ώμ—λŠ” main() λ©”μ†Œλ“œκ°€ μ—†λ‹€ !?

ν˜„μž¬ HTTP ν”„λ‘œν† μ½œ 및 μ›Ήμ„œλ²„ - μ›Ή μ»¨ν…Œμ΄λ„ˆ - μ„œλΈ”λ¦Ώμ— λŒ€ν•œ λ‚΄μš©λ“€μ„ ν¬μŠ€νŒ… ν•˜κ³  μžˆμŠ΅λ‹ˆλ‹€. 2010/06/27 - [Programing/JSP & Servlet] - μ›Ή μ„œλ²„μ™€ λ„μš°λ―Έ μ–΄ν”Œλ¦¬μΌ€μ΄μ…˜( CGI ) 2010/06/27 - [Programing/JSP & Servlet]

namsieon.com

 

λ°˜μ‘ν˜•

'π™ΉπšŠπšŸπšŠ' μΉ΄ν…Œκ³ λ¦¬μ˜ λ‹€λ₯Έ κΈ€

taglibs.jar λ‹€μš΄ λ°›κΈ°  (0) 2023.10.26
[JAVA] request.setCharacterEncoding() 이 μ•ˆ 될 λ•Œ : unhandled exception type UnsupportedEncodingException  (0) 2023.10.25
Eclipseμ—μ„œ WEB-INF에 web.xml이 μ—†μŒ / web.xml μ†ŒμŠ€ λ³΄λŠ” 법  (0) 2023.10.17
혼자 λ„μ μ—¬λ³΄λŠ”... μžλ°” 곡뢀 (3)  (0) 2023.10.15
jstl.jar λ‹€μš΄λ°›κΈ°  (1) 2023.10.14
  1. ❓ κΆκΈˆμ¦β“
  2. Servletμ΄λž€?
  3. Servlet의 νŠΉμ§•
  4. main λ©”μ„œλ“œκ°€ μ—†λŠ” 이유
  5. μ›Ή ν΄λΌμ΄μ–ΈνŠΈ ↔ μ„œλ²„μ˜ 흐름
'π™ΉπšŠπšŸπšŠ' μΉ΄ν…Œκ³ λ¦¬μ˜ λ‹€λ₯Έ κΈ€
  • taglibs.jar λ‹€μš΄ λ°›κΈ°
  • [JAVA] request.setCharacterEncoding() 이 μ•ˆ 될 λ•Œ : unhandled exception type UnsupportedEncodingException
  • Eclipseμ—μ„œ WEB-INF에 web.xml이 μ—†μŒ / web.xml μ†ŒμŠ€ λ³΄λŠ” 법
  • 혼자 λ„μ μ—¬λ³΄λŠ”... μžλ°” 곡뢀 (3)
ν•΄λ²„λ‹ˆ
ν•΄λ²„λ‹ˆ
κ°œλ°œν•˜λ©΄μ„œ 배운 것듀을 κΈ°λ‘ν•©λ‹ˆλ‹€.
ν•΄λ²„λ‹ˆ
DevNight
ν•΄λ²„λ‹ˆ
전체
였늘
μ–΄μ œ
  • 전체보기 (194)
    • πšπšŽπšπš›πš˜πšœπš™πšŽπšŒπšπš’πšŸπšŽπšœ (5)
      • πšƒπš’πš™πšœ (2)
      • 회고 (3)
      • μ‹€μˆ˜ λͺ¨μŒμ§‘ (0)
    • π™Ώπš›πš˜πš“πšŽπšŒπš (3)
      • π™Ίπ™Ύπš‚πšƒπ™° πš†πšŽπš‹ π™Ώπš›πš˜πš“πšŽπšŒπš (2)
    • π™Ώπš›πš˜πšπš›πšŠπš–πš–πš’πš—πš π™»πšŠπš—πšπšžπšŠπšπšŽ (16)
      • π™·πšƒπ™Όπ™» (6)
      • π™²πš‚πš‚ (1)
      • π™Ήπ™°πš…π™° (1)
      • π™ΉπšŠπšŸπšŠπš‚πšŒπš›πš’πš™πš (7)
      • πšƒπš’πš™πšŽπš‚πšŒπš›πš’πš™πš (1)
    • π™±πšŠπšŒπš”πšŽπš—πš (4)
      • πš‚πš™πš›πš’πš—πš π™±πš˜πš˜πš (0)
      • Spring (2)
      • 파일 처리 (1)
      • π™Ήπš‚π™Ώ (1)
    • π™΅πš›πš˜πš—πšπšŽπš—πš (5)
      • 𝚁𝚎𝚊𝚌𝚝 (3)
      • πš…πšžπšŽ.πš“πšœ (2)
    • π™°πš•πšπš˜πš›πš’πšπš‘πš– (32)
      • π™Ώπš›πš˜πšπš›πšŠπš–πš–πšŽπš›πšœ (6)
      • π™±πšŠπšŽπš”πš“πš˜πš˜πš— (24)
    • π™³π™°πšƒπ™°π™±π™°πš‚π™΄ (16)
      • πš‚πš€π™» (1)
      • π™Ώπš˜πšœπšπšπš›πšŽπš‚πš€π™» (1)
      • π™Όπš’πš‚πš€π™» (3)
      • π™Ύπš›πšŠπšŒπš•πšŽ (0)
      • π™Ώπš›πš˜πšπš›πšŠπš–πš–πšŽπš›πšœ (1)
    • π™³πšŽπšŸπšŽπš•πš˜πš™πš–πšŽπš—πš πšƒπš˜πš˜πš•πšœ (4)
      • π™Έπš—πšπšŽπš•πš•πš’π™Ή (0)
      • π™΄πšŒπš•πš’πš™πšœπšŽ (1)
      • πš…πš‚π™²πš˜πšπšŽ (0)
      • π™±πšžπš’πš•πš πš‚πšŒπš›πš’πš™πšπšœ (1)
    • πš…πšŽπš›πšœπš’πš˜πš— π™²πš˜πš—πšπš›πš˜πš• (0)
      • π™Άπš’πš (0)
      • π™Άπš’πšπ™·πšžπš‹ (0)
      • πš‚πš…π™½ (0)
    • 배포 및 인프라 (2)
      • π™°πš†πš‚ (2)
    • π™Έπšƒ (15)
      • πš‚πš…π™½ (3)
    • π™ΉπšŠπšŸπšœπš‚πšŒπš›πš’πš™πš (4)
      • πš…πšžπšŽ.πš“πšœ (0)
    • πš†πšŽπš‹ (9)
      • 𝚊𝚠𝚜 (0)
      • π™·πšƒπ™Όπ™» (0)
      • π™²πš‚πš‚ (2)
    • π™ΉπšŠπšŸπšŠ (56)
      • πš‚πš™πš›πš’πš—πš π™±πš˜πš˜πš (3)
    • π™Άπš’πšπ™·πšžπš‹ (10)
    • ν™˜κ²½μ„€μ • (10)

λΈ”λ‘œκ·Έ 메뉴

  • ν™ˆ
  • νƒœκ·Έ
  • λ°©λͺ…둝

곡지사항

인기 κΈ€

νƒœκ·Έ

  • database
  • μžλ°”
  • μžλ°”μ˜μ •μ„
  • web
  • Java
  • λ°°μ—΄
  • ν”„λ‘œκ·Έλž˜λ¨ΈμŠ€
  • html
  • μžλ°”μŠ€ν¬λ¦½νŠΈ
  • ν‹°μŠ€ν† λ¦¬μ±Œλ¦°μ§€
  • React
  • μ˜€λΈ”μ™„
  • λ°±μ€€
  • php
  • μ•Œκ³ λ¦¬μ¦˜
  • 이클립슀
  • JavaScript
  • PostgreSQL
  • μ½”λ”©ν…ŒμŠ€νŠΈ
  • spring

졜근 λŒ“κΈ€

졜근 κΈ€

hELLO Β· Designed By μ •μƒμš°.v4.3.0
ν•΄λ²„λ‹ˆ
servletμ—λŠ” main() λ©”μ†Œλ“œκ°€ μ—†λ‹€.
μƒλ‹¨μœΌλ‘œ

ν‹°μŠ€ν† λ¦¬νˆ΄λ°”

단좕킀

λ‚΄ λΈ”λ‘œκ·Έ

λ‚΄ λΈ”λ‘œκ·Έ - κ΄€λ¦¬μž ν™ˆ μ „ν™˜
Q
Q
μƒˆ κΈ€ μ“°κΈ°
W
W

λΈ”λ‘œκ·Έ κ²Œμ‹œκΈ€

κΈ€ μˆ˜μ • (κΆŒν•œ μžˆλŠ” 경우)
E
E
λŒ“κΈ€ μ˜μ—­μœΌλ‘œ 이동
C
C

λͺ¨λ“  μ˜μ—­

이 νŽ˜μ΄μ§€μ˜ URL 볡사
S
S
맨 μœ„λ‘œ 이동
T
T
ν‹°μŠ€ν† λ¦¬ ν™ˆ 이동
H
H
단좕킀 μ•ˆλ‚΄
Shift + /
⇧ + /

* λ‹¨μΆ•ν‚€λŠ” ν•œκΈ€/영문 λŒ€μ†Œλ¬Έμžλ‘œ 이용 κ°€λŠ₯ν•˜λ©°, ν‹°μŠ€ν† λ¦¬ κΈ°λ³Έ λ„λ©”μΈμ—μ„œλ§Œ λ™μž‘ν•©λ‹ˆλ‹€.