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

๋ถ„๋ฅ˜ ์ „์ฒด๋ณด๊ธฐ286

Spring Framework์™€ ๊ฐ์ฒด์ง€ํ–ฅ ์Šคํ”„๋ง ํ”„๋ ˆ์ž„์›Œํฌ๋Š” ๊ฐ์ฒด์ง€ํ–ฅ ์–ธ์–ด์ธ ์ž๋ฐ”์˜ ํŠน์ง•์„ ์‚ด๋ ค์ข‹์€ ๊ฐ์ฒด์ง€ํ–ฅ ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜์„ ๊ฐœ๋ฐœํ•˜๋„๋ก ๋„์™€์ฃผ๋Š” ํ”„๋ ˆ์ž„์›Œํฌ์ด๋‹ค.  ๊ฐ์ฒด์ง€ํ–ฅ์ด๋ž€, ์ปดํ“จํ„ฐ ํ”„๋กœ๊ทธ๋žจ์„ ๋ช…๋ น์–ด์˜ ๋ชฉ๋ก์œผ๋กœ ๋ณด๋Š” ์‹œ๊ฐ์—์„œ ๋ฒ—์–ด๋‚˜์—ฌ๋Ÿฌ ๊ฐ์ฒด๋“ค์˜ ๋ชจ์ž„์œผ๋กœ ๋ฐ”๋ผ๋ณด๋Š” ๊ฒƒ์ด๋‹ค.๊ฐ์ฒด์ง€ํ–ฅ ํŠน์ง•์œผ๋กœ๋Š” ๋‹คํ˜•์„ฑ, ์ถ”์ƒํ™”, ์บก์Аํ™”, ์ƒ์† ์ด ์žˆ๋‹ค.  ํŠนํžˆ ์ด ์ค‘์—์„œ ๋‹คํ˜•์„ฑ์€ ์ธํ„ฐํŽ˜์ด์Šค(์—ญํ• )๊ณผ ๊ตฌํ˜„์ฒด(๊ตฌํ˜„)์„ ๋ช…ํ™•ํ•˜๊ฒŒ ๋ถ„๋ฆฌํ•  ์ˆ˜ ์žˆ๋„๋ก ํ•ด์ค€๋‹ค.๊ทธ๋ ‡๊ฒŒ ๋˜๋ฉด, ํด๋ผ์ด์–ธํŠธ ์ฝ”๋“œ๋ฅผ ๋ณ€๊ฒฝํ•˜์ง€ ์•Š๊ณ , ์„œ๋ฒ„์˜ ๊ตฌํ˜„์ฒด๋ฅผ ๋ณ€๊ฒฝํ•˜๊ฑฐ๋‚˜ ๊ฐˆ์•„๋ผ์šธ ์ˆ˜ ์žˆ๊ฒŒ ๋œ๋‹ค. 2024. 8. 13.
[JAVA] Cloneable๊ณผ Objects.clone() / Shallow Copy์— ๋Œ€ํ•ด์„œ Deep Copy์™€ Shallow Copy์˜ ๋Œ€๋žต์ ์ธ ์ฐจ์ด์ ์— ๋Œ€ํ•ด์„œ๋Š” ์˜ˆ์ „๋ถ€ํ„ฐ ์•Œ๊ณ  ์žˆ์—ˆ๋‹ค.์˜ค๋Š˜ ๊ณต๋ถ€ํ•˜๋‹ค๊ฐ€ ์ž˜ ๋ชฐ๋ž๋˜ ๋ถ€๋ถ„์„ ์ƒˆ๋กœ ์•Œ๊ฒŒ ๋˜์–ด์„œ, ๋‹ค์‹œ ์ญ‰ ๊ณต๋ถ€ํ•˜๋ฉด์„œ ํฌ์ŠคํŒ… ํ•ด๋ณด๋ ค๊ณ  ํ•œ๋‹น ์šฐ์„  Object.clone() ๋ฉ”์„œ๋“œ๋Š” ๊ฐ์ฒด๋ฅผ ๋ณต์‚ฌํ•˜๋Š” ๋ฐ ์‚ฌ์šฉํ•˜๋Š” ๋ฉ”์„œ๋“œ์ด๋‹ค. ํŠน์ • ๊ฐ์ฒด์— ๋Œ€ํ•ด Objects.clone() ๋ฉ”์„œ๋“œ๋ฅผ ์‚ฌ์šฉํ•˜๋ ค๋ฉด, ๊ทธ ๊ฐ์ฒด๊ฐ€ Cloneable ์ธํ„ฐํŽ˜์ด์Šค์˜ ๊ตฌํ˜„์ฒด์—ฌ์•ผ ํ•œ๋‹ค. โœ… Cloneable ์ธํ„ฐํŽ˜์ด์Šค ๊ณต์‹ ๋ฌธ์„œ๋ฅผ ์ฝ์–ด๋ณด์ž.- Object.clone() ๋ฉ”์„œ๋“œ๋ฅผ ์‚ฌ์šฉํ•˜๋ ค๋ฉด ํ•ด๋‹น ํด๋ž˜์Šค๋Š” Cloneable ์ธํ„ฐํŽ˜์ด์Šค์˜ ๊ตฌํ˜„์ฒด์—ฌ์•ผ ํ•œ๋‹ค.- Cloneable ์ธํ„ฐํŽ˜์ด์Šค๋ฅผ ๊ตฌํ˜„ํ•˜์ง€ ์•Š๋Š” ์ธ์Šคํ„ด์Šค์—์„œ Object์˜ clone ๋ฉ”์„œ๋“œ๋ฅผ ํ˜ธ์ถœํ•˜๋ฉด CloneNotSupportedException.. 2024. 8. 5.
Tomcat ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜์—์„œ csv ํŒŒ์ผ ์ฝ๊ธฐ โœ… ๊ตฌ์กฐ์ผ๋‹จ macOS ๊ธฐ์ค€ brew๋กœ ์„ค์น˜ํ•œ ํ†ฐ์บฃ ์„œ๋ฒ„ ๊ตฌ์กฐ๋Š” ์ด๋ ‡๊ฒŒ ์ƒ๊ฒผ๋‹ค./optโ””โ”€โ”€ homebrew โ””โ”€โ”€ Cellar โ””โ”€โ”€ tomcat@9 โ””โ”€โ”€ 9.0.91 โ”œโ”€โ”€ bin โ””โ”€โ”€ libexec โ””โ”€โ”€ webapps โ””โ”€โ”€ lms1 โ””โ”€โ”€ index.jsp โ””โ”€โ”€ WEB-INF โ””โ”€โ”€ classes โ””โ”€โ”€ Studen.. 2024. 7. 28.
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.
ํšŒ์‚ฌ ๋…ธํŠธ๋ถ์— java ๊ฐœ๋ฐœํ™˜๊ฒฝ ์„ธํŒ…ํ•˜๊ธฐ ํŒจํ‚ค์ง€ ๊ด€๋ฆฌ์ž Homebrew ์„ค์น˜ ํ„ฐ๋ฏธ๋„์— ์ž…๋ ฅ/bin/bash -c "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/HEAD/install.sh)" iterm2 ์„ค์น˜brew install --cask iterm2   Oh My Zsh ์„ค์น˜sh -c "$(curl -fsSL https://raw.githubusercontent.com/ohmyzsh/ohmyzsh/master/tools/install.sh)"  ๊พธ๋ฏธ๋Š” ๊ฑด ๋‚˜์ค‘์—Java 11๋ฒ„์ „์„ ์‚ฌ์šฉํ•  ๊ฒƒ์ด๊ธฐ ๋•Œ๋ฌธ์— JDK11 ๋‹ค์šด๋ฐ›๊ธฐhttps://adoptium.net/temurin/releases/์ œ๋Œ€๋กœ ๋œ ๊ฒฝ๋กœ์— JDK๊ฐ€ ์„ค์น˜๋˜์—ˆ๋Š”์ง€ ํ™•์ธ(JDK ํด๋”๊ฐ€ `/Library/Java/.. 2024. 7. 22.
728x90