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

๊ฐœ์ธ ๊ณต๋ถ€/WEB10

WAS (์›น ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜ ์„œ๋ฒ„) โœจ ์›น ๊ธฐ์ˆ ์€ ์–ด๋–ค ํ๋ฆ„์œผ๋กœ ๋ฐœ์ „ํ–ˆ์„๊นŒ โœจ๐Ÿ“„ CGI ํ”„๋กœ๊ทธ๋žจ๐Ÿ“„ Servlet๊ณผ ์„œ๋ธ”๋ฆฟ ์ปจํ…Œ์ด๋„ˆ๐Ÿ“„ WAS (์›น ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜ ์„œ๋ฒ„) โœ…  ์›น ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜ ์„œ๋ฒ„(WAS) - ๋™์  ์›น ์ปจํ…์ธ ๋ฅผ ์ƒ์„ฑํ•˜๊ธฐ ์œ„ํ•œ ์›น ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜ + ์„œ๋ฒ„ ํ™˜๊ฒฝ์„ ๋งŒ๋“ค์–ด ๋™์ž‘์‹œํ‚ค๋Š” ๊ธฐ๋Šฅ์„ ํ•˜๋Š” ์†Œํ”„ํŠธ์›จ์–ด ํ”„๋ ˆ์ž„์›Œํฌ์ด๋‹ค. - DB ์กฐํšŒ๋‚˜ ๋‹ค์–‘ํ•œ ๋กœ์ง ์ฒ˜๋ฆฌ ๋“ฑ์˜ ๊ฒฐ๊ณผ๋กœ ์ƒ์„ฑ๋œ ๋™์  ์ปจํ…์ธ ๋ฅผ ํด๋ผ์ด์–ธํŠธํ•œํ…Œ ์ œ๊ณตํ•˜๋Š” ๊ฒƒ์ด ๋ชฉ์ ์ด๋‹ค.        (๋™์  ์›น ์ปจํ…์ธ ๋ž€, ๋ฐฉ๋ฌธ ์‹œ๊ฐ„, ๋ฐฉ๋ฌธ ์œ„์น˜, ์‚ฌ์šฉ์ž ๋“ฑ์— ๋”ฐ๋ผ ๋ชจ๋‘ ๋‹ค๋ฅด๊ฒŒ ํ‘œ์‹œ๋˜๋Š” ์ปจํ…์ธ ๋ฅผ ๋งํ•œ๋‹ค.)  - ์ธํ„ฐ๋„ท์ƒ์—์„œ HTTP๋ฅผ ํ†ตํ•ด ์‚ฌ์šฉ์ž ์ปดํ“จํ„ฐ๋‚˜ ์žฅ์น˜์—์„œ ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜์„ ์ˆ˜ํ–‰ํ•ด์ฃผ๋Š” ๋ฏธ๋“ค์›จ์–ด(์†Œํ”„ํŠธ์›จ์–ด ์—”์ง„)๋กœ ๋ณผ ์ˆ˜ ์žˆ๋‹ค. - ์ข…๋ฅ˜: Tomcat, JBoss, JEUS, WebSphere.. 2025. 1. 13.
Node.js๋กœ node-red ๋‚ด์žฅ ์„œ๋ฒ„ ๋„์›Œ๋ณด๊ธฐ โœ… Node.js ์„ค์น˜์šฐ์„  homebrew๋กœ Node.js๋ฅผ ์„ค์น˜ํ•ด์ฃผ์—ˆ๋‹ค.brew install node  โœ… ์ฝ”๋“œ ์ž‘์„ฑ๋จผ์ € ๊ฐ„๋‹จํ•œ ์›น์„œ๋ฒ„๋ฅผ ๋„์›Œ๋ณด๊ธฐ ์œ„ํ•ด index.js ํŒŒ์ผ์„ ์ž‘์„ฑํ–ˆ๋‹ค.const http = require('http');http.createServer((req, res) => { res.statusCode = 200; res.setHeader('Content-Type', 'text/plain'); res.end('Hello Node.js');}).listen(9090);  ์‹คํ–‰์€ ์ด๋ ‡๊ฒŒ ํ•˜๋ฉด ๋œ๋‹ค.node index.js  node.js ์ž„๋ฒ ๋“œ ํ•˜๊ธฐ ์œ„ํ•ด node-red express๋ฅผ ์„ค์น˜ํ•ด์ฃผ์—ˆ๋‹ค.npm install node-red express  ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜ ์ฝ”๋“œ.. 2024. 10. 2.
@ExceptionHandler, @ControllerAdvice โœ… ExceptionHandler - ์˜ˆ์™ธ ์ฒ˜๋ฆฌ ํ•ธ๋“ค๋Ÿฌ - ํŠน์ • ์˜ˆ์™ธ๊ฐ€ ๋ฐœ์ƒํ•œ ์š”์ฒญ์„ ์ฒ˜๋ฆฌํ•จ - ์ง€์›ํ•˜๋Š” ๋ฉ”์„œ๋“œ ์•„๊ทœ๋จผํŠธ๊ฐ€ ์ผ๋ฐ˜ ํ•ธ๋“ค๋Ÿฌ๋ณด๋‹ค๋Š” ํ•œ์ •์ ์ž„ - ์˜ˆ์™ธ ๊ฐ์ฒด, ํ•ธ๋“ค๋Ÿฌ ๊ฐ์ฒด, ๋ชจ๋ธ ๋“ฑ (๊ณต์‹ ๋ฌธ์„œ ์ฐธ๊ณ ) ๋‹ค๋ฅธ ํ•ธ๋“ค๋Ÿฌ์—์„œ TestException์„ ๋˜์ง€๋ฉด, testErrorHandler๊ฐ€ ๋™์ž‘ํ•˜๊ณ  ์—๋Ÿฌ ํŽ˜์ด์ง€๋ฅผ ๋ฐ˜ํ™˜ - REST API์˜ ๊ฒฝ์šฐ ์ต์…‰์…˜ ํ•ธ๋“ค๋Ÿฌ ๋ฆฌํ„ด ํƒ€์ž…์œผ๋กœ ResponseEntity๋ฅผ ์ฃผ๋กœ ์‚ฌ์šฉํ•œ๋‹ค. โœ… ControllerAdvice - ํŠน์ • ์ปจํŠธ๋กค๋Ÿฌ ์•ˆ์—์„œ๊ฐ€ ์•„๋‹ˆ๋ผ, ๋ชจ๋“  ์ปจํŠธ๋กค๋Ÿฌ์— ๊ฑธ์ณ์„œ ExceptionHandler, InitBinder, ModelAttributes ๋ฅผ ์ ์šฉํ•˜๊ณ  ์‹ถ์€ ๊ฒฝ์šฐ ์‚ฌ์šฉ - @ContrllerAdvice ์†์„ฑ์œผ๋กœ ์ ์šฉํ•  ๋ฒ”์œ„๋ฅผ ์ง€์ •ํ•  ์ˆ˜๋„ ์žˆ๋‹ค. @Targ.. 2024. 3. 1.
@SessionAttribute, @SessionAttriubtes โœ… ๊ฐ์ฒด๋ฅผ ์„ธ์…˜์— ๋„ฃ์–ด์„œ ์‚ฌ์šฉํ•˜๊ธฐ์–ด๋–ค ์ •๋ณด๋ฅผ ์„ธ์…˜์— ๋„ฃ๊ณ  ์‚ฌ์šฉํ•˜๊ณ  ์‹ถ์œผ๋ฉด๋ฉ”์„œ๋“œ ํ•ธ๋“ค๋Ÿฌ ํŒŒ๋ผ๋ฏธํ„ฐ์— HttpSession์„ ๋ฐ”๋กœ ๋ฐ›์•„์„œ ์‚ฌ์šฉํ•  ์ˆ˜๋„ ์žˆ๋‹ค.session.setAttribute(ํ‚ค,๋ฐธ๋ฅ˜)  โœ… @SessionAttribute@SessionAttribute ์–ด๋…ธํ…Œ์ด์…˜์„ ์‚ฌ์šฉํ•˜๋ฉด,session.setAttribute() ๋ฅผ ํ•˜์ง€ ์•Š์•„๋„ ์ž๋™์œผ๋กœ ๊ฐ์ฒด๋ฅผ ์„ธ์…˜์— ๋„ฃ์–ด์ค€๋‹ค.   โœ… @ModelAttributeModelAttribute๋Š” ์„ธ์…˜์— ์žˆ๋Š” ๊ฐ’๋“ค์„ ์กฐํ•ฉํ•ด์„œ ๊ฐ์ฒด๋ฅผ ๋งŒ๋“ค์–ด์ค„ ์ˆ˜๋„ ์žˆ๋‹ค. ๊ทธ๋ž˜์„œ ์—ฌ๋Ÿฌ ํŽ˜์ด์ง€์—์„œ ํผ๋ฐ์ดํ„ฐ๋กœ ์ž…๋ ฅ๋ฐ›์•˜๋˜ key, value ์Œ์„ ์„ธ์…˜์— ์ €์žฅํ•ด๋‘์—ˆ๋‹ค๊ฐ€ ์žฌ์‚ฌ์šฉํ•  ์ˆ˜ ์žˆ๋‹ค.ํŽ˜์ด์ง€1์—์„œ id๋ฐ›๊ณ  ์„ธ์…˜์— ๋„ฃ์–ด๋‘๊ณ , ๋‹ค์Œ ํŽ˜์ด์ง€2์—์„œ pwd ๋ฐ›๊ณ  ์„ธ์…˜์— ๋„ฃ์–ด๋‘๊ณ ,๋ชจ๋ธ์–ดํŠธ๋ฆฌ๋ทฐํŠธ๊ฐ€ ์„ธ.. 2024. 3. 1.
@ModelAttribute @RequestParam์€ http์š”์ฒญ์œผ๋กœ๋ถ€ํ„ฐ ์‹ฌํ”Œ ํƒ€์ž…์˜ ๊ฐ์ฒด๋ฅผ ํ•˜๋‚˜์”ฉ ๊ฐ€์ ธ์™”์—ˆ๋‹ค๋ฉด, @ModelAttribute๋กœ๋Š” http ์š”์ฒญ ํผ๋ฐ์ดํ„ฐ๋กœ๋ถ€ํ„ฐ ๋ณตํ•ฉ ๊ฐ์ฒด ๋ฅผ ๊ฐ€์ ธ์˜ฌ ์ˆ˜ ์žˆ๋‹ค. ๐Ÿฅ ์˜ˆ์‹œ @RequestParam - ๋‹จ์ผ ํƒ€์ž… @ModelAttribute - ๋ณตํ•ฉ ํƒ€์ž… ModelAttribute๋Š” ์„ธ์…˜์— ์ €์žฅ๋œ ๋ฐธ๋ฅ˜ ์ •๋ณด๊นŒ์ง€ ์กฐํ•ฉํ•˜์—ฌ ๋ณตํ•ฉ ๊ฐ์ฒด๋ฅผ ์ƒ์„ฑํ•œ๋‹ค. โœ… BindingResult @ModelAttribute ๋ณ€์ˆ˜ ์˜ค๋ฅธ์ชฝ์— ํ•จ๊ป˜ ์จ์ฃผ๋ฉด, binding ์˜ค๋ฅ˜ ๋ฐœ์ƒ์‹œ ๋ฐ”๋กœ ์ต์…‰์…˜ ๋˜์ง€๋Š” ๊ฒŒ ์•„๋‹ˆ๋ผ, ์—๋Ÿฌ ์ •๋ณด๋ฅผ BindingResult ์•ˆ์— ๋‹ด์•„์ค€๋‹ค. ๐Ÿฅ ์ž…๋ ฅํผ์—์„œ id๋ฅผ String์œผ๋กœ ์ค€๊ฒฝ์šฐ ์‘๋‹ต์ฝ”๋“œ๋Š” 200์ด ์˜ด ๊ทธ๋Ÿฌ๋‚˜ ์„œ๋ฒ„์—์„œ๋Š” id๊ฐ€ String์ด ์•„๋‹ˆ๋ผ Long์œผ๋กœ ์„ ์–ธ๋˜์—ˆ๊ธฐ ๋•Œ๋ฌธ์— user.. 2024. 3. 1.
[๊ฐ•์˜ ์ •๋ฆฌ] ์Šคํ”„๋ง MVC ํ™œ์šฉ ๊ฐ•์˜ ์ถœ์ฒ˜: https://www.inflearn.com/course/%EC%9B%B9-mvc ์Šคํ”„๋ง ์›น MVC ๊ฐ•์˜ - ์ธํ”„๋Ÿฐ ์ด ๊ฐ•์˜๋Š” ์ž๋ฐ” ์„œ๋ธ”๋ฆฟ(Servlet) ๊ธฐ๋ฐ˜์˜ MVC ํ”„๋ ˆ์ž„์›Œํฌ์ธ ์Šคํ”„๋ง ์›น MVC์— ๋Œ€ํ•ด ํ•™์Šตํ•ฉ๋‹ˆ๋‹ค. ์›ํ• ํ•œ ํ•™์Šต์„ ์œ„ํ•ด์„œ ใ€Š์Šคํ”„๋ง ํ”„๋ ˆ์ž„์›Œํฌ ํ•ต์‹ฌ ๊ธฐ์ˆ ใ€‹ ๊ฐ•์˜๋ฅผ ์ˆ˜๊ฐ•ํ•ด์ฃผ์„ธ์š”., ์Šคํ”„๋ง ์›น MVC์˜ ํ•ต์‹ฌ ์› www.inflearn.com ๐Ÿ‘ฉ‍๐Ÿ’ป HTTP ์š”์ฒญ ๋งตํ•‘ํ•˜๊ธฐ @RequestMapping(์š”์ฒญurl) - ๋ฉ”์„œ๋“œ ์ง€์ • ์•ˆ ํ•ด์ฃผ๋ฉด ๋ชจ๋“  ๋ฉ”์„œ๋“œ๋ฅผ ํ—ˆ์šฉํ•˜๊ฒŒ ๋œ๋‹ค - ํŠน์ • ๋ฉ”์„œ๋“œ ์ง€์ • ํ•ด์ฃผ๋ ค๋ฉด: @RequestMapping(value={์š”์ฒญurl} , method=RequestMethod.GET) @RequestsMapping(value={์š”์ฒญurl}, method={Reque.. 2024. 2. 29.
728x90