๐Ÿ’ป BackEnd/๐ŸŸข Spring | SpringBoot 15

๐ŸŸข [Spring] ์Šคํ”„๋ง ํŒŒ์ผ ์—…๋กœ๋“œ

๐Ÿšฉ ์Šคํ”„๋ง์—์„œ ํŒŒ์ผ ์—…๋กœ๋“œ ๊ตฌํ˜„ ์Šคํ”„๋ง์—์„œ ํŒŒ์ผ ์—…๋กœ๋“œ๋ฅผ ๊ตฌํ˜„ํ•˜๋ ค๋ฉด ๋ช‡ ๊ฐ€์ง€ ์„ค์ •์„ ํ•ด์ค˜์•ผํ•œ๋‹ค. commons-fileupload ๋ฅผ ๋ฉ”์ด๋ธ ๋ผ์ด๋ธŒ๋Ÿฌ๋ฆฌ ์˜์กด์„ฑ ์„ค์ •์„ ์ถ”๊ฐ€ํ•˜๊ณ  ์›น ์ปดํฌ๋„ŒํŠธ ์„ค์ • ํŒŒ์ผ(servlet-context.xml)์— MultipartResolver ๋นˆ ์„ค์ •์„ ์ถ”๊ฐ€ํ•ด์•ผํ•œ๋‹ค. 1. ๋ฉ”์ด๋ธ ๋ผ์ด๋ธŒ๋Ÿฌ๋ฆฌ ์˜์กด์„ฑ ์„ค์ • commons-fileupload commons-fileupload 1.4 ๋ฒ„์ „์€ ์ž์‹ ์˜ ํ”„๋กœ์ ํŠธ์— ๋งž๊ฒŒ ์„ค์ •ํ•ด์ฃผ๋ฉด ๋œ๋‹ค. 2. ์›น ์ปดํฌ๋„ŒํŠธ ์„ค์ • ํŒŒ์ผ MultipartResolver ๋นˆ์„ ์ƒ์„ฑํ•ด์ฃผ๋„๋ก ํ•œ๋‹ค. ํŒŒ์ผ์˜ ํฌ๊ธฐ๋Š” ๋„ˆ๋ฌด ํฌ๋ฉด ์•ˆ๋˜๊ธฐ ๋•Œ๋ฌธ์— ์ตœ๋Œ“๊ฐ’์„ ์ง€์ •ํ•ด์ค€๋‹ค. ๋‚˜๋Š” bean id๋ฅผ ์„ค์ •ํ•ด์ฃผ์ง€ ์•Š์•„์„œ form ์—์„œ ๋ฐ์ดํ„ฐ๊ฐ€ ๋„˜์–ด๊ฐ€์ง€ ์•Š์•„์„œ ์ปจํŠธ๋กค๋Ÿฌ์—์„œ ๊ฐ’์„ ๋ฐ›์ง€ ๋ชปํ•˜๋Š” ์˜ค..

๐ŸŸข [Spring] ์Šคํ”„๋ง ์„ค์ • ํŒŒ์ผ (XML)

๐Ÿ“Œ ์Šคํ”„๋ง ํ”„๋กœ์ ํŠธ ์„ค์ • ํŒŒ์ผ ๊ด€๋ฆฌ ์Šคํ”„๋ง ํ”„๋กœ์ ํŠธ๋ฅผ ์‹œ์ž‘ํ•˜๊ธฐ์— ์•ž์„œ ์Šคํ”„๋ง์€ ์„ค์ • ํŒŒ์ผ์„ ์„ค์ •ํ•˜๋Š” ๋ถ€๋ถ„์ด ์–ด๋ ค์šด ํŽธ์ด๋‹ค. Node.js ๋กœ๋งŒ ํ”„๋กœ์ ํŠธ๋ฅผ ํ•ด๋ดค๋˜ ๋‚˜๋กœ์จ๋Š” ๊ฝค ํž˜๋“  ์ž‘์—…๋“ค์ด์—ˆ๋‹ค. XML ํŒŒ์ผ๋“ค๋„ ์ฒ˜์Œ์ด์—ˆ๊ณ  JSP ์‚ฌ์šฉ๋„ ์ฒ˜์Œ์ด์–ด์„œ ๊ฝค๋‚˜ ๋งŽ์€ ์‹œ๊ฐ„์„ ์†Œ๋น„ํ•˜์˜€๋‹ค. ์ง€๊ธˆ๊นŒ์ง€ ๋ฐฐ์šด ์„ค์ • ํŒŒ์ผ์„ web.xml / servlet-context.xml / pom.xml / application-config.xml ํŒŒ์ผ์ด๋‹ค. ์—ฌ๊ธฐ์„œ ๋‚˜๋Š” ๋”ฐ๋กœ config ํŒŒ์ผ์„ ๋งŒ๋“ค์–ด ๊ฒฝ๋กœ๋ฅผ ๋ณ€๊ฒฝํ•ด์ฃผ์—ˆ๊ธฐ ๋•Œ๋ฌธ์— application-config.xml ์€ root-context.xml ๊ณผ ๊ฐ™๋‹ค๊ณ  ๋ณด๋ฉด๋œ๋‹ค. ์ด ๋‚ด์šฉ์€ ์•„๋ž˜์—์„œ ์„ค๋ช…ํ•œ๋‹ค. 1. Web.xml contextConfigLocation classpath:appl..

๐ŸŸข [Spring] ์Šคํ”„๋ง ๋นˆ(Bean) ์ด๋ž€?

๐Ÿ“Œ ์Šคํ”„๋ง ๋นˆ(Bean) ์ด๋ž€? ๋นˆ(Bean)์€ ์Šคํ”„๋ง ์ปจํ…Œ์ด๋„ˆ์— ์˜ํ•ด ๊ด€๋ฆฌ๋˜๋Š” ์žฌ์‚ฌ์šฉ ๊ฐ€๋Šฅํ•œ ์†Œํ”„ํŠธ์›จ์–ด ์ปดํฌ๋„ŒํŠธ์ด๋‹ค. ์ฆ‰, ์Šคํ”„๋ง ์ปจํ…Œ์ด๋„ˆ๊ฐ€ ๊ด€๋ฆฌํ•˜๋Š” ์ž๋ฐ” ๊ฐ์ฒด๋ฅผ ๋œปํ•˜๋ฉฐ, ํ•˜๋‚˜ ์ด์ƒ์˜ ๋นˆ(Bean)์„ ๊ด€๋ฆฌํ•œ๋‹ค. ๋นˆ์€ ์ธ์Šคํ„ด์Šคํ™”๋œ ๊ฐ์ฒด๋ฅผ ์˜๋ฏธํ•˜๋ฉฐ, ์Šคํ”„๋ง ์ปจํ…Œ์ด๋„ˆ์— ๋“ฑ๋ก๋œ ๊ฐ์ฒด๋ฅผ ์Šคํ”„๋ง ๋นˆ์ด๋ผ๊ณ  ํ•œ๋‹ค. ์‰ฝ๊ฒŒ ์ดํ•ดํ•˜์ž๋ฉด new ํ‚ค์›Œ๋“œ ๋Œ€์‹  ์‚ฌ์šฉํ•œ๋‹ค๊ณ  ๋ณด๋ฉด๋œ๋‹ค. IHelloService helloService = new IHelloService() IHelloService ๋ผ๋Š” ์ธํ„ฐํŽ˜์ด์Šค๊ฐ€ ์กด์žฌํ•˜๊ณ  helloService ์ธ์Šคํ„ด์Šค๋ฅผ ๋งŒ๋“ค๊ธฐ ์œ„ํ•ด์„œ๋Š” new ๋ผ๋Š” ํ‚ค์›Œ๋“œ๋ฅผ ์‚ฌ์šฉํ•ด ์ธ์Šคํ„ด์Šค๋ฅผ ์ƒ์„ฑํ•˜์˜€๋‹ค. ์Šคํ”„๋ง ์ปจํ…Œ์ด๋„ˆ๊ฐ€ ๊ด€๋ฆฌํ•˜๋„๋ก ํ•˜๋Š” ๋ฐฉ๋ฒ•์€ ๋นˆ ํƒœ๊ทธ๋ฅผ ์‚ฌ์šฉํ•˜๋ฉด ๋œ๋‹ค. ์ด๋ ‡๊ฒŒ xml ํŒŒ์ผ ๋นˆ ํƒœ๊ทธ๋ฅผ ์ถ”๊ฐ€ํ•˜๋ฉด h..

๐ŸŸข Spring Boot ์‹œ์ž‘ํ•˜๊ธฐ

Spring Boot ๋ž€? ์Šคํ”„๋ง๋ถ€ํŠธ(Sping Boot)๋ž€ ์Šคํ”„๋ง(Spring)์„ ๋” ์‰ฝ๊ฒŒ ์ด์šฉํ•˜๊ธฐ ์œ„ํ•œ ๋„๊ตฌ์ž…๋‹ˆ๋‹ค. ์Šคํ”„๋ง์„ ์ด์šฉํ•˜์—ฌ ๊ฐœ๋ฐœ์„ ํ•  ๋•Œ, ์ด๊ฒƒ์ €๊ฒƒ ์„ธํŒ…์„ ํ•ด์•ผ๋˜๋Š” ์š”์†Œ๋“ค์ด ๊ฐœ๋ฐœ์ž๋“ค์—๊ฒ ์‹œ๊ฐ„๋‚ญ๋น„์˜€์Šค๋นˆ๋‹ค. ๋งŽ์€ ์„ค์ •์„ ํ•ด์•ผ ์ง„์ž… ์žฅ๋ฒฝ์ด ๋†’์•˜๊ณ  Spring์„ ์ฒ˜์Œ ๋ฐฐ์šฐ๋Š” ์‚ฌ๋žŒ๋“ค์ด ๋งŽ์ด ๊ทธ๋งŒ ๋‘๋Š” ๊ฒฝ์šฐ๊ฐ€ ๋งŽ์•˜์Šต๋‹ˆ๋‹ค. Spring Boot๋Š” ๋งค์šฐ ๊ฐ„๋‹จํ•˜๊ฒŒ ํ”„๋กœ์ ํŠธ๋ฅผ ์„ค์ •ํ•  ์ˆ˜ ์žˆ๊ฒŒ ํ•˜๊ณ , Spring ๊ฐœ๋ฐœ์„ ์กฐ๊ธˆ ๋” ์‰ฝ๊ฒŒ ๋งŒ๋“ค์–ด์ฃผ๋Š” ์—ญํ• ์„ ํ•˜๊ณ  ์žˆ์Šต๋‹ˆ๋‹ค. Spring Boot ์‹œ์ž‘ํ•˜๊ธฐ https://start.spring.io/ ์ด ๋งํฌ๋ฅผ ํ†ตํ•ด ์Šคํ”„๋ง์˜ ๊ธฐ๋ณธ ์„ค์ •์ด ๊ฐ€๋Šฅํ•ฉ๋‹ˆ๋‹ค. ํ”„๋กœ์ ํŠธ์˜ ๋ฒ„์ „, ๋ผ์ด๋ธŒ๋Ÿฌ๋ฆฌ, ์–ธ์–ด ๋“ฑ ์„ ํƒ์ด ๊ฐ€๋Šฅํ•ฉ๋‹ˆ๋‹ค. 1. Project ์š”์ฆ˜์€ ๋Œ€๋ถ€๋ถ„ Gradle์„ ์ด์šฉํ•˜์—ฌ ๊ฐœ๋ฐœ..

์ธํ…”๋ฆฌ์ œ์ด(Intellij) ํ•™์ƒ ๋ผ์ด์„ผ์Šค ๊ฐฑ์‹ 

์ธํ…”๋ฆฌ์ œ์ด( Intellij ) ์ธํ…”๋ฆฌ์ œ์ด๋ฅผ ์‚ฌ์šฉํ•˜์ง€ ์•Š๋‹ค๊ฐ€ ์Šคํ”„๋ง๋ถ€ํŠธ๋ฅผ ๊ณต๋ถ€ํ•˜๊ธฐ ์œ„ํ•ด ๋‹ค์šด๋กœ๋“œ ํ•˜๋ ค๊ณ  ํ–ˆ๋”๋‹ˆ ์‚ฌ์šฉ๊ธฐ๊ฐ„์ด ๊ฑฐ์˜ ๋งŒ๋ฃŒ๋˜์—ˆ๋‹ค. ๊ทธ๋ž˜์„œ ๋‹ค์‹œ ํ•™์ƒ ์ด๋ฉ”์ผ ์ธ์ฆ์„ ํ†ตํ•ด ๋ผ์ด์„ผ์Šค๋ฅผ ๊ฐฑ์‹ ํ•˜๋Š” ๋ฐฉ๋ฒ•์„ ์•Œ์•„๋ณด๋„๋ก ํ•˜์ž. ๋จผ์ € ์‚ฌ์ดํŠธ์— ์ ‘์†ํ•˜๋„๋ก ํ•œ๋‹ค. https://www.jetbrains.com/ko-kr/community/education/#students ๋ฌด๋ฃŒ ๊ต์œก์šฉ ๋ผ์ด์„ ์Šค | ์ปค๋ฎค๋‹ˆํ‹ฐ ์ง€์› www.jetbrains.com ๊ทธ ํ›„ ์ง€๊ธˆ ์‹ ์ฒญํ•˜๊ธฐ๋ฅผ ๋ˆ„๋ฅด๊ณ  ์ž์‹ ์˜ ํ•™๊ต ์ด๋ฉ”์ผ์„ ์ ๋„๋ก ํ•œ๋‹ค. ๋‚˜๋Š” ํšŒ์›๊ฐ€์ž…์ด ๋˜์–ด ์žˆ์–ด์„œ ๋”ฐ๋กœ ํšŒ์›๊ฐ€์ž…์„ ํ•˜์ง€ ์•Š์•˜๋Š”๋ฐ ๋งŒ์•ฝ ํšŒ์›์ด ์•„๋‹ˆ๋ผ๋ฉด ํšŒ์›๊ฐ€์ž…์„ ํ•ด์•ผ ํ•  ๊ฒƒ์ด๋‹ค. ๋ชจ๋‘ ์ž‘์„ฑ ํ›„ ๋ฌด๋ฃŒ ์ œํ’ˆ ์‹ ์ฒญ์„ ๋ˆ„๋ฅด๊ฒŒ ๋˜๋ฉด ์ด๋ฉ”์ผ ์ธ์ฆ๋งŒ ๋ฐ›์œผ๋ฉด ์™„๋ฃŒ๋œ๋‹ค. ์ด๋ฉ”์ผ์„ ํ™•์ธ ํ›„ ์ธ์ฆ ..