Spring_boot

Spring Boot Spring boot๋Š” ์„œ๋ฒ„ ์ƒ์„ฑ์„ ์œ„ํ•œ ๋„๊ตฌ๋กœ, spring ํ”„๋ ˆ์ž„์›Œํฌ์— ํŽธ์˜์„ฑ์„ ํ–ฅ์ƒ์‹œํ‚จ ํ”„๋ ˆ์ž„์›Œํฌ์ด๋‹ค. Java, Kitlin, Groovy ๋“ฑ์˜ ์–ธ์–ด๋กœ ๊ตฌํ˜„์ด ๊ฐ€๋Šฅํ•˜๋‹ค. ๊ฐœ๋ฐœํ™˜๊ฒฝ java ๊ธฐ๋ฐ˜์œผ๋กœ ๋™์ž‘ํ•˜๊ธฐ์— jdk ์„ค์น˜๊ฐ€ ํ•„์š”ํ•˜๋‹ค. (22๋…„ ๊ธฐ์ค€) 11๋ฒ„์ „ ์ด์ƒ์„ ๋‹ค์šด๋ฐ›๋Š”๊ฒƒ์„ ์ถ”์ฒœํ•œ๋‹ค. IDE vs code๋ฅผ ์‚ฌ์šฉํ•œ๋‹ค๋ฉด ํ™•์žฅํŒจํ‚ค์ง€๋กœ โ€˜Java Extension Packโ€™ ๊ณผ โ€˜Spring Boot Extension Packโ€™ ์„ ์„ค์น˜ํ•œ๋‹ค. java ๊ฐœ๋ฐœ์„ ์œ„ํ•œ eclips๋‚˜ intelliJ๋ฅผ ์‚ฌ์šฉํ•ด๋„ ๋œ๋‹ค. spring ํ”„๋กœ์ ํŠธ ์ƒ์„ฑ start.spring.io ํŽ˜์ด์ง€์— ๋“ค์–ด๊ฐ€๋ฉด ํ”„๋กœ์ ํŠธ๋ฅผ ์ƒ์„ฑํ•  ์ˆ˜ ์žˆ๋Š” UI๊ฐ€ ๊ตฌ์„ฑ๋˜์–ด ์žˆ๋‹ค. ์›ํ•˜๋Š”๋Œ€๋กœ ์„ค์ • ํ›„ ๋‹ค์šด๋กœ๋“œ๋ฅผ ๋ฐ›์•„์„œ ์‚ฌ์šฉํ•˜๋ฉด ๋œ๋‹ค. gradle ์„ค์น˜ https://gradle.org/releases/ ์ฃผ์†Œ์—์„œ gradle ํŒŒ์ผ์„ ๋‹ค์šด๋ฐ›๋Š”๋‹ค. ์ดํ›„ path ์„ค์ •์„ ๋งˆ์นœ ํ›„, ํ”„๋กœ์ ํŠธ root directory์—์„œ gradle wrapper ๋ช…๋ น์„ ์ˆ˜ํ–‰ํ•ด gradlewํŒŒ์ผ์„ ์ƒ์„ฑํ•œ๋‹ค. ๊ธฐ๋ณธ ์„ค์ • ํฌํŠธ ์„ค์ • application.properties (ํ˜น์€ yml)ํŒŒ์ผ์„ ์—ด๊ณ , server.port = 8080 ์™€ ๊ฐ™์ด ๊ธฐ์ž…ํ•˜๋ฉด ๋™์ž‘ ํฌํŠธ๋ฅผ 8080์œผ๋กœ ์„ค์ •ํ•  ์ˆ˜ ์žˆ๋‹ค. devtools ์„ค์ • ์ •์  ํŒŒ์ผ๋“ค์„ ๊ฐฑ์‹ ํ–ˆ์„ ๋•Œ, ์„œ๋ฒ„ ์žฌ์‹คํ–‰ ์—†์ด explorer๋งŒ reload ํ•ด ์ฃผ๋ฉด ๋ณ€๊ฒฝ์ ์ด ๋ฐ˜์˜๋  ์ˆ˜ ์žˆ๋„๋ก ํ•œ๋‹ค. ...

<span title='2022-05-30 19:20:23 +0900 KST'>May 30, 2022</span>&nbsp;ยท&nbsp;9 min&nbsp;ยท&nbsp;AswinBlue

Spring basic

Spring basic ์„ค์น˜ spring CLI๋ฅผ ์„ค์น˜ํ•œ๋‹ค. ์ง์ ‘ ๋‹ค์šด๋ฐ›์•„์„œ ์›ํ•˜๋Š” ๊ณณ์— ์••์ถ•์„ ํ‘ผ ํ›„ PATH์„ค์ •์„ ํ•ด ์ฃผ๋Š”๊ฒŒ ๋น ๋ฅด๋‹ค. ์ฐธ์กฐ ํ”„๋กœ์ ํŠธ ์ƒ์„ฑ CLI๋กœ ํ”„๋กœ์ ํŠธ๋ฅผ ์ƒ์„ฑํ•ด ๋ณด์ž. spring init --build=gradle -d=web -a=myApp -g=com.aswin.blue [location] --build=gradle ๊ธฐ๋ณธ์œผ๋กœ maven์„ ์‚ฌ์šฉํ•˜์ง€๋งŒ gradle๋กœ ์„ค์ • ๊ฐ€๋Šฅํ•˜๋‹ค. -d=web dependency๋ฅผ web์œผ๋กœ ์„ค์ • -a=myApp artifactId, ์ฆ‰ project๋ช…์„ ์„ค์ •ํ•œ๋‹ค. -g=com.aswin.blue ๊ทธ๋ฃน ๋ช…์„ ์„ค์ •ํ•œ๋‹ค. [location] ์ƒ์„ฑํ•  ํด๋”๋ฅผ ์ง€์ •ํ•œ๋‹ค. ์—†์œผ๋ฉด ์ƒˆ๋กœ ์ƒ์„ฑํ•œ๋‹ค. ์ง€์ •ํ•˜์ง€ ์•Š์œผ๋ฉด zip ํ˜•ํƒœ๋กœ ์••์ถ•ํ•ด์„œ ์ƒ์„ฑํ•œ๋‹ค. ์„ค์ • maven์œผ๋กœ ํ”„๋กœ์ ํŠธ๋ฅผ ์ƒ์„ฑํ•˜๋ฉด pom.xml์„ ์„ค์ •ํ•ด์•ผ ํ•œ๋‹ค. ๊ฐ์ข… ๋ผ์ด๋ธŒ๋Ÿฌ๋ฆฌ๋ฅผ ํ”Œ๋Ÿฌ๊ทธ์ธ ํ˜•ํƒœ๋กœ ์‚ฌ์šฉํ•˜๋ ค๋ฉด dependency์™€ repository ์„ค์ •์„ํ•ด ์ค˜์•ผ ํ•œ๋‹ค. โ€œhttps://mvnrepository.com/" ์ฃผ์†Œ์ฒ˜๋Ÿผ maven repository๋ฅผ ์ •๋ฆฌํ•ด ๋†“์€ ์‚ฌ์ดํŠธ์—์„œ ์›ํ•˜๋Š” repository๋ฅผ ์ฐพ์•„์„œ dependency๋ฅผ ์ž‘์„ฑํ•œ๋‹ค. repository ์ถ”๊ฐ€์‹œ compile dependency๋ฅผ ํ™•์ธํ•˜๊ณ  ์ถ”๊ฐ€๋กœ pom.xml์„ ์ž‘์„ฑํ•œ๋‹ค. maven ์‚ฌ์ดํŠธ๋ณด๋‹ค๋Š” github์˜ readme๋ฅผ ๋” ์‹ ์šฉํ•˜์ž, maven ์‚ฌ์ดํŠธ ์—…๋ฐ์ดํŠธ๊ฐ€ ์•ˆ๋ผ์„œ ์ž˜ ๋™์ž‘ํ•˜์ง€ ์•Š๋Š” ๊ฒƒ๋„ ์žˆ๋‹ค. ์‹คํ–‰ maven ํ”„๋กœ์ ํŠธ์˜ ์‹คํ–‰์—๋„ maven์ด ์‚ฌ์šฉ๋œ๋‹ค. mvn -X clean install exec:java -Dexec.args="" ๋กœ ์‹คํ–‰์ด ๊ฐ€๋Šฅํ•˜๋‹ค. -X ๋Š” ๋””๋ฒ„๊น… ๋กœ๊ทธ ์ถœ๋ ฅ์„ ์˜๋ฏธํ•œ๋‹ค. -Dexec.args= ๋Š” main ํ•จ์ˆ˜์˜ argv๋ฅผ ์„ค์ •ํ•œ๋‹ค. ...

<span title='2021-08-23 19:21:55 +0900 KST'>August 23, 2021</span>&nbsp;ยท&nbsp;1 min&nbsp;ยท&nbsp;AswinBlue

Nodejs

Node.js ๊ธฐ๋ณธ ๋ช…๋ น npm init : ํŒจํ‚ค์ง€ ์ƒ์„ฑ npm install : ๋ผ์ด๋ธŒ๋Ÿฌ๋ฆฌ ์„ค์น˜ -P : package.json์— ์ €์žฅ, ๊ธฐ๋ณธ์˜ต์…˜ -O : optionalDependencies์— ์ €์žฅ -D, --no-save : ๊ธฐ๋ก์—†์ด ๋‹ค์šด๋กœ๋“œ -g : ๊ธ€๋กœ๋ฒŒ ์„ค์น˜, ๋ชจ๋“  ํ”„๋กœ์ ํŠธ์— ์ ์šฉ MODULE_NAME@VERSION : ๋ฒ„์ „ ์„ค์ •, latest๋Š” ๊ฐ€์žฅ ์ตœ๊ทผ ๋ฒ„์ „์„ ์˜๋ฏธ node main.js : ์‹คํ–‰(main.js) npx <package_name> : ์„ค์น˜ํ•˜์ง€ ์•Š๊ณ  ์ผํšŒ๋งŒ ์‹คํ–‰ node main.js : ํŒจํ‚ค์ง€ ์‹คํ–‰ (main.jsํŒŒ์ผ) npm audit : ์˜์กด์„ฑ ๋ฌธ์ œ๊ฐ€ ๋ฐœ์ƒํ–ˆ์„ ๋•Œ, npm audit fix : ์˜์กด์„ฑ ๋ฌธ์ œ๋ฅผ ์ž๋™์œผ๋กœ ํ•ด๊ฒฐํ•˜๋Š” ๋ช…๋ น์–ด, ์ผ๋ถ€ ํ•ด๊ฒฐ์„ ํ•  ์ˆ˜๋Š” ์žˆ์ง€๋งŒ package.json ํŒŒ์ผ์„ ์ˆ˜์ •ํ•  ์ˆ˜ ์žˆ์œผ๋ฏ€๋กœ ์ฃผ์˜. โ€“fix ์˜ต์…˜์„ ๋„ฃ์–ด์„œ ๊ฐ•์ œ๋กœ ์ˆ˜์ •ํ•  ์ˆ˜๋„ ์žˆ์ง€๋งŒ, ์˜คํžˆ๋ ค ๋˜๋˜ ๊ธฐ๋Šฅ์ด ์•ˆ ๋  ์ˆ˜๋„ ์žˆ์œผ๋ฏ€๋กœ ์ถ”์ฒœํ•˜์ง€ ์•Š๋Š”๋‹ค. npm cache clean : ์บ์‹ฑ๋œ ๋ฐ์ดํ„ฐ๋ฅผ ์ •๋ฆฌํ•  ์ˆ˜ ์žˆ๋‹ค. โ€“force ์˜ต์…˜์„ ๋„ฃ์–ด ๊ฐ•์ œ๋กœ ์ฒ˜๋ฆฌ ๊ฐ€๋Šฅ ๊ตฌ์กฐ main.js : nodejs ์‹คํ–‰์‹œ ์‹คํ–‰ํ•  ๋ฉ”์ธ ํŒŒ์ผ package.json : root ๊ฒฝ๋กœ์— ์กด์žฌํ•˜๋ฉฐ, npm ํ”„๋กœ์ ํŠธ๋ฅผ ๊ด€๋ฆฌํ•˜๋Š” ํŒŒ์ผ /node_modules : ํ”„๋กœ์ ํŠธ์—์„œ ์‚ฌ์šฉ๋˜๋Š” ๋ชจ๋“ˆ๋“ค์ด ์ €์žฅ๋˜๋Š” ํŒŒ์ผ์ด๋‹ค. npm install ๋ช…๋ น ์‚ฌ์šฉ์‹œ ๋ชจ๋“ˆ๋“ค์ด ๋‹ค์šด๋ฐ›์•„์ง€๋Š” ๊ฒฝ๋กœ์ด๋‹ค. package.json nodejs ์„ค์ •์„ ๋‹ด๊ณ ์žˆ๋Š” ํŒŒ์ผ๋กœ, ์ฐธ์กฐํ•  ๋‚ด์šฉ์ด ๋งŽ์•„ ์•„๋ž˜์— ๋”ฐ๋กœ ์ •๋ฆฌํ•œ๋‹ค. ...

<span title='2020-07-20 20:40:05 +0900 KST'>July 20, 2020</span>&nbsp;ยท&nbsp;6 min&nbsp;ยท&nbsp;AswinBlue