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

๊ฐœ์ธ ๊ณต๋ถ€/WEB-Servlet,JSP8

Servlet๊ณผ ์„œ๋ธ”๋ฆฟ ์ปจํ…Œ์ด๋„ˆ โœจ ์›น ๊ธฐ์ˆ ์€ ์–ด๋–ค ํ๋ฆ„์œผ๋กœ ๋ฐœ์ „ํ–ˆ์„๊นŒ โœจ๐Ÿ“„ CGI ํ”„๋กœ๊ทธ๋žจ๐Ÿ“„ Servlet๊ณผ ์„œ๋ธ”๋ฆฟ ์ปจํ…Œ์ด๋„ˆ๐Ÿ“„ WAS (์›น ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜ ์„œ๋ฒ„)โœ… Servlet (์„œ๋ธ”๋ฆฟ)- Java๋ฅผ ์‚ฌ์šฉํ•˜์—ฌ ๋™์ ์ธ ์›น ์ปจํ…์ธ ๋ฅผ ์ƒ์„ฑํ•˜๊ธฐ ์œ„ํ•œ ์„œ๋ฒ„ ์ธก ํ‘œ์ค€(specification)์ด๋‹ค.- ํ•˜๋‚˜์˜ ์š”์ฒญ์€ ํ•˜๋‚˜์˜ ์Šค๋ ˆ๋“œ(์ƒˆ๋กœ ์ƒ์„ฑํ•˜๊ฑฐ๋‚˜, ์Šค๋ ˆ๋“œํ’€์—์„œ ํ• ๋‹น)์— ์˜ํ•ด ์ฒ˜๋ฆฌ๋œ๋‹ค. ๐Ÿ“Œ ์™œ CGI ํ”„๋กœ๊ทธ๋žจ ๋Œ€์‹ , ์„œ๋ธ”๋ฆฟ์„ ์‚ฌ์šฉํ•˜๊ฒŒ ๋˜์—ˆ๋Š”๊ฐ€?- CGI ํ”„๋กœ๊ทธ๋žจ์€ ์š”์ฒญ๋งˆ๋‹ค ํ”„๋กœ์„ธ์Šค๋ฅผ ๋งŒ๋“ค์–ด ์‚ฌ์šฉํ•˜๊ธฐ ๋•Œ๋ฌธ์— ์‹คํ–‰์†๋„๊ฐ€ ๋А๋ฆฌ๋‹ค.- ์ด๋Ÿฌํ•œ ๋‹จ์ ์„ ๋ณด์™„ํ•˜๊ธฐ ์œ„ํ•ด FastCGI๊ฐ€ ๋“ฑ์žฅํ•˜๊ธด ํ–ˆ์ง€๋งŒ,    FastCGI๋„ ์—ฌ์ „ํžˆ ์Šคํฌ๋ฆฝํŠธ ๊ธฐ๋ฐ˜์œผ๋กœ ๋™์ž‘ํ•˜๊ณ , ์›น ์„œ๋ฒ„์™€ ์—ฐ๋™ํ•˜๊ธฐ ์œ„ํ•ด์„œ๋Š” ๋ณต์žกํ•œ ์„ค์ •๋“ค์ด ํ•„์š”ํ–ˆ๋‹ค. - ์ด๋Ÿฌํ•œ ๋ฌธ์ œ์ ์„ ํ•ด๊ฒฐํ•˜๊ธฐ ์œ„ํ•ด, Java.. 2025. 1. 13.
CGI ํ”„๋กœ๊ทธ๋žจ โœจ ์›น ๊ธฐ์ˆ ์€ ์–ด๋–ค ํ๋ฆ„์œผ๋กœ ๋ฐœ์ „ํ–ˆ์„๊นŒ โœจ๐Ÿ“„ CGI ํ”„๋กœ๊ทธ๋žจ๐Ÿ“„ Servlet๊ณผ ์„œ๋ธ”๋ฆฟ ์ปจํ…Œ์ด๋„ˆ๐Ÿ“„ WAS (์›น ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜ ์„œ๋ฒ„)  โœ… ์›น์„œ๋ฒ„ - ์›น์„œ๋ฒ„๋ž€, ํด๋ผ์ด์–ธํŠธ๋กœ๋ถ€ํ„ฐ HTTP ์š”์ฒญ์„ ๋ฐ›์•„์„œ, HTML์ด๋‚˜ ์ด๋ฏธ์ง€ ํŒŒ์ผ ๋“ฑ์˜ ์ •์  ์ปจํ…์ธ ์„ ์‘๋‹ตํ•ด์ฃผ๋Š” ์„œ๋ฒ„์ด๋‹ค. - ์ฆ‰ ์‚ฌ์šฉ์ž์™€ ์ •์ ์ธ ์ปจํ…์ธ ๋ฅผ ์ฃผ๊ณ ๋ฐ›๋Š” ๊ฒƒ์ด ๋ชฉ์ ์ด๋‹ค. - ๋™์ ์ธ ์›น ์ปจํ…์ธ ๋Š” ์ฒ˜๋ฆฌํ•  ์ˆ˜ ์—†๋‹ค. - ์ข…๋ฅ˜: Apache, Nginx, IIS โœ… CGI ํ”„๋กœ๊ทธ๋žจ์˜ ๋“ฑ์žฅ์›น์„œ๋ฒ„๋Š” ํด๋ผ์ด์–ธํŠธ ์š”์ฒญ์— ๋Œ€ํ•ด ์ •์  ๋ฆฌ์†Œ์Šค๋ฅผ ์‘๋‹ตํ•ด์ฃผ๋Š” ๊ธฐ๋Šฅ๋งŒ ํ•œ๋‹ค.์›น์„œ๋ฒ„๋Š” ์š”์ฒญ ์‹œ๊ฐ„, ์œ„์น˜, ์‚ฌ์šฉ์ž ๋“ฑ ์š”์ฒญ ์กฐ๊ฑด์— ๋”ฐ๋ผ์„œ ๊ฐ๊ฐ ๋‹ค๋ฅธ ์‘๋‹ต์„ ๋™์ ์œผ๋กœ ์ƒ์„ฑํ•˜๋Š” ๊ธฐ๋Šฅ์ด ์—†๋‹ค. ์ด๋Ÿฐ ํ•œ๊ณ„๋ฅผ ๊ทน๋ณตํ•˜๊ธฐ ์œ„ํ•ด,  ์›น์„œ๋ฒ„์™€ ํ•จ๊ป˜ CGI ํ”„๋กœ๊ทธ๋žจ์„ ์‚ฌ์šฉํ•˜๊ธฐ ์‹œ์ž‘ํ–ˆ๋‹ค. CGI ํ”„๋กœ๊ทธ๋žจ.. 2025. 1. 7.
Tomcat์—์„œ ์ดˆ๊ฐ„๋‹จ ํ”„๋กœ๊ทธ๋žจ ๋Œ๋ฆฌ๊ธฐ (java, jsp) ํ†ฐ์บฃ์˜ ๋””ํดํŠธ ์„ค์ •์„ ๋ณ€๊ฒฝํ•˜์ง€ ์•Š๊ณ ํ†ฐ์บฃ ์œ„์—์„œ ๊ฐ„๋‹จํ•œ ํ”„๋กœ๊ทธ๋žจ์„ ๋Œ๋ ค๋ณด๋ ค๊ณ  ํ•œ๋‹ค. ์ž‘์—…ํ•˜๋ ค๋Š” ํด๋”๋Š” ํ†ฐ์บฃ ์„ค์น˜๊ฒฝ๋กœ์˜ webapps ํ•˜์œ„์— ์žˆ์–ด์•ผ ํ•œ๋‹ค.macOS ๊ธฐ์ค€ `/opt/homebrew/Cellar/tomcat@9/9.0.91/libexec/webapps` ์ถ”๊ฐ€ํ•œ ๊ฐ๊ฐ์˜ ์ž‘์—… ํด๋”๋Š” / ํ•˜์œ„์˜ ์ตœ์ƒ์œ„ ๊ฒฝ๋กœ๊ฐ€ ๋œ๋‹ค. ๋งŒ์•ฝ ๋‚ด๊ฐ€ webapps/test1 ๋””๋ ‰ํ† ๋ฆฌ๋ฅผ ๋งŒ๋“ค์–ด ์ž‘์—…์„ ํ–ˆ๋‹ค๋ฉด์•„๋ž˜ ํ™”๋ฉด์—์„œ /test๋ฅผ ํด๋ฆญํ–ˆ์„ ๋•Œ,๊ธฐ๋ณธ์ ์œผ๋กœ `localhost:8080/test1/` ๊ฒฝ๋กœ๋กœ ์ด๋™ํ•˜๊ฒŒ ๋œ๋‹ค.  `localhost:8080/test1/`๋กœ ์ ‘์†ํ•˜๊ฒŒ ๋˜๋ฉด ํ†ฐ์บฃ์€ `webapps/test1/index.jsp`๋ฅผ ์ฝ์–ด ํ™”๋ฉด์— ๋ณด์—ฌ์ฃผ๊ฒŒ ๋œ๋‹ค.  jsp ํŽ˜์ด์ง€์—์„œ ๋‚ด๊ฐ€ ์ž‘์„ฑํ•œ ์ž๋ฐ” ํด๋ž˜์Šค ํŒŒ์ผ์„ impor.. 2024. 7. 26.
Tomcat ์„ค์น˜ํ•˜๊ณ  ์‹คํ–‰์‹œํ‚ค๊ธฐ (macOS, tomcat@9, jdk11) ์กฐ์‹ฌํ•  ์ !- Tomcat ์„ ์‚ฌ์šฉํ•˜๊ธฐ ์œ„ํ•ด์„œ๋Š” ์‚ฌ์ „์— JDK๋ฅผ ๋ฐ˜๋“œ์‹œ ์„ค์น˜ํ•ด์•ผ ํ•œ๋‹ค.- Tomcat ๋ฒ„์ „๊ณผ JDK ๋ฒ„์ „๋„ ์ž˜ ๋งž์ถฐ์ค˜์•ผ ํ•œ๋‹ค.JDK๋Š” ๊น”๋ ค์žˆ์œผ๋‹ˆHomebrew๋กœ ํ†ฐ์บฃ ์„ค์น˜$ brew install tomcat@9  ํ†ฐ์บฃ ์„ค์น˜๊ฒฝ๋กœ์˜ bin ํด๋”๋กœ ์ด๋™$ cd /opt/homebrew/Cellar/tomcat@9/9.0.85/bin  ๊ด€๋ฆฌ์ž ๊ณ„์ • ์„ค์ •์„ ์œ„ํ•ด์„œ/opt/homebrew/Cellar/tomcat@9/9.0.85/libexec/conf/tomcat-users.xml ํŒŒ์ผ์„ ์ˆ˜์ •ํ•ด์•ผ ํ•œ๋‹ค. ์ฃผ์„ ์ฒ˜๋ฆฌ๋œ user ํƒœ๊ทธ๋ฅผ ์ฃผ์„ ํ•ด์ œ ํ•ด์ฃผ๊ณ , password๋ฅผ ์›ํ•˜๋Š” ๋Œ€๋กœ ๋ฐ”๊พผ๋‹ค.๋‚˜๋Š” ๊ทธ๋ƒฅ admin์œผ๋กœ ๋ฐ”๊ฟ”์ฃผ์—ˆ์Œ   ํ†ฐ์บฃ ์‹คํ–‰์‹œํ‚ค๊ธฐ$ ./catalina start localhost:80.. 2024. 7. 25.
[jsp] jsp ๊ธฐ๋ณธ ๋ฌธ๋ฒ• โœ… Java Server Page - ์ •์ ์ธ html์— java ์ฝ”๋“œ๋ฅผ ๋„ฃ์–ด์„œ ๋™์ ์œผ๋กœ ์›นํŽ˜์ด์ง€๋ฅผ ๊ตฌ์„ฑํ•  ์ˆ˜ ์žˆ๊ฒŒ ๋งŒ๋“œ๋Š” ์›น ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜ ๋„๊ตฌ - jspํŒŒ์ผ์ด ์‹คํ–‰๋˜๋ฉด, WAS๋Š” ๋‚ด๋ถ€์ ์œผ๋กœ jspํŒŒ์ผ์„ servlet ํŒŒ์ผ๋กœ ๋ณ€ํ™˜ํ•˜๊ณ , ์„œ๋ธ”๋ฆฟ ํŒŒ์ผ์„ ์‹คํ–‰์‹œ์ผœ ์ž‘์—…์„ ์ˆ˜ํ–‰ํ•œ๋‹ค. ๊ทธ ๊ฒฐ๊ณผ ์ƒ์„ฑ๋œ ์‘๋‹ต์„ ํด๋ผ์ด์–ธํŠธ์—๊ฒŒ ์ „์†กํ•œ๋‹ค - jsp ํŽ˜์ด์ง€์˜ ์ •๋ณด๋ฅผ ๋‚˜ํƒ€๋‚ด๋Š” ์ง€์‹œ์ž. content-type๊ณผ ์ธ์ฝ”๋”ฉ ๋ฐฉ์‹์„ ์ง€์ • - jsp ํŒŒ์ผ ์•ˆ์— ๋‹ค๋ฅธ jsp๋‚˜ html ํŒŒ์ผ์„ ํฌํ•จํ•  ๋•Œ 2024. 1. 8.
[servlet] Listener โœ… Listener - Servlet ์ปจํ…Œ์ด๋„ˆ๊ฐ€ ์ˆ˜ํ–‰ํ•œ ํŠน์ • ํƒ€์ž…์˜ ์ด๋ฒคํŠธ๋ฅผ ๊ฐ์ง€ํ•˜์—ฌ, ํ•ด๋‹น ์ด๋ฒคํŠธ ๋ฐœ์ƒ ์‹œ์— ์–ด๋– ํ•œ ์ž‘์—…์„ ์ˆ˜ํ–‰ํ•˜๋Š” ๊ฐ์ฒด ๐Ÿฅ ServletContextListener, ServletContextAttributeListener - ServletContextListener : ServletContextEvent๊ฐ€ ๋ฐœ์ƒํ•  ๊ฒฝ์šฐ - ServletContextAttributeListener : ServletContextAttributeEvent๊ฐ€ ๋ฐœ์ƒํ•  ๊ฒฝ์šฐ @Slf4j public class ContextListener implements ServletContextListener, ServletContextAttributeListener { public ContextListener() { } .. 2024. 1. 8.
728x90