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

์ „์ฒด ๊ธ€160

SPA(Single Page Application)๋ž€? ๐Ÿ“˜ SPA๋ž€?ํ•œ ๋งˆ๋””๋กœ 'ํŽ˜์ด์ง€๊ฐ€ ํ•˜๋‚˜์ฒ˜๋Ÿผ ๋ณด์ด๋Š” ์›น์•ฑ'์„ ๋งํ•œ๋‹ค.  ๋กœ๊ทธ์ธ์„ ์˜ˆ์‹œ๋กœ ๋“ค๋ฉด,๐ŸŸก MPA (Multi Page Application) = ์ „ํ†ต์ ์ธ ์›น์•ฑ  ๋กœ๊ทธ์ธ ํด๋ฆญ → ์„œ๋ฒ„์—์„œ ์ƒˆ๋กœ์šด HTML ํŽ˜์ด์ง€ ์ „์ฒด๋ฅผ ์‘๋‹ตํ•ด์„œ ์ƒˆ๋กœ๊ณ ์นจ ๐ŸŸก SPA (Single Page Application)๋กœ๊ทธ์ธ ํด๋ฆญ → ๊ธฐ์กด ํŽ˜์ด์ง€ ์œ ์ง€ํ•œ ์ฑ„, ํ•„์š”ํ•œ ๋ฐ์ดํ„ฐ๋งŒ ์„œ๋ฒ„์—์„œ ๋ฐ›์•„์™€์„œ ํ™”๋ฉด ์ผ๋ถ€๋งŒ ๋ฐ”๋€œ  โœ…SPA ํ™˜๊ฒฝ์—์„œ ๋ฐฑ์—”๋“œ ๊ฐœ๋ฐœ์ž๊ฐ€ ์—ฌ๊ธฐ์„œ ์•Œ์•„์•ผ ํ•  Pointโ˜… SPA๋Š” ํ™”๋ฉด ์ „ํ™˜์„ ๋ธŒ๋ผ์šฐ์ €๊ฐ€ ์ง์ ‘ ํ•˜๊ณ , ๋ฐฑ์—”๋“œ๋Š” ๋ฐ์ดํ„ฐ๋งŒ ์ œ๊ณตํ•˜๋Š” ๊ตฌ์กฐ๋‹ค.๊ทธ๋ž˜์„œ Spring Boot๋Š” REST API ์„œ๋ฒ„์ฒ˜๋Ÿผ ๋™์ž‘ํ•ด์•ผ ํ•จ! ๐Ÿ’ฌ ์˜ˆ์‹œ React ๋กœ๊ทธ์ธ ํ™”๋ฉด์—์„œ ์•„์ด๋””/๋น„๋ฒˆ ์ž…๋ ฅ → POST /auth/login API๋กœ ๋ฐฑ์—”๋“œ.. 2025. 4. 10.
[Java]DTO๋Š” ํ•ญ์ƒ ๋งŒ๋“ค์–ด์•ผ ํ• ๊นŒ? ๋‹ต์€ Yes๋ผ๊ณ  ์ƒ๊ฐํ•œ๋‹ค.์š”์ฒญ(Request), ์‘๋‹ต(Response) ๋ชจ๋‘ DTO๋ฅผ ๋งŒ๋“ค์–ด์ฃผ๋ฉด ์ข‹๋‹ค. ์‹ค๋ฌด์—์„œ API๋ฅผ ์„ค๊ณ„ํ•  ๋•Œ ์š”์ฒญ๊ณผ ์‘๋‹ต ๊ฐ๊ฐ์— DTO๋ฅผ ์•ˆ ์“ฐ๋ฉด ์ปจํŠธ๋กค๋Ÿฌ์—์„œ ์—”ํ‹ฐํ‹ฐ๋ฅผ ์ง์ ‘ ๋…ธ์ถœํ•˜๊ฑฐ๋‚˜ ๋ฐ›์•„์•ผ ํ•˜๋Š”๋ฐ, ์ด๊ฑด ๋ณด์•ˆ, ์œ ์ง€๋ณด์ˆ˜, ํ™•์žฅ์„ฑ ๋ฉด์—์„œ ๋งค์šฐ ๋ถˆ๋ฆฌํ•˜๋‹ค. ์ฆ‰, ๊ณ„์ธต ๋ถ„๋ฆฌ, ๋ณด์•ˆ, ์œ ์ง€๋ณด์ˆ˜, ์œ ์—ฐ์„ฑ ๋ชจ๋‘๋ฅผ ์œ„ํ•œ ๊ธฐ๋ณธ ์„ค๊ณ„ ์›์น™์ด๊ธฐ ๋•Œ๋ฌธ์— ์‚ฌ์‹ค์ƒ ํ•„์ˆ˜๋‚˜ ๋‹ค๋ฆ„ ์—†๋‹ค. ํŠนํžˆ Form ๋ฐ์ดํ„ฐ ๋‹ค๋ฃฐ ๋•Œ๋Š” 100% ์จ์•ผํ•œ๋‹ค.@ModelAttribute๋‚˜ @RequestParam์œผ๋กœ ํผ ๋ฐ์ดํ„ฐ๋ฅผ ๋ฐ›๋Š” ๊ฒฝ์šฐ, ํ•„๋“œ๋ฅผ ํ•˜๋‚˜์”ฉ ๋ฐ›๊ธฐ๋ณด๋‹ค๋Š” DTO๋กœ ๋ฌถ์–ด์„œ ๋ฐ›๋Š” ๊ฒŒ ํ›จ์”ฌ ๋ช…ํ™•ํ•˜๊ณ  ์œ ์ง€๋ณด์ˆ˜ํ•˜๊ธฐ ์ข‹๋‹ค. ๊ฒŒ๋‹ค๊ฐ€ ํ•„๋“œ๊ฐ€ ๋งŽ์•„์งˆ์ˆ˜๋ก ์ฝ”๋“œ๊ฐ€ ๋ณต์žกํ•ด์ง€๋Š”๋ฐ, DTO๋ฅผ ์“ฐ๋ฉด ๊ฒ€์ฆ๋„ ์‰ฝ๊ฒŒ ๊ฑธ ์ˆ˜ ์žˆ์–ด์„œ ์ •๋ง ์ข‹๋‹ค. ์ด์œ ๋Š” .. 2025. 4. 9.
[Java]StringBuilder ํด๋ž˜์Šค ์‚ฌ์šฉ๋ฒ•๐Ÿ’ช โœ… StringBuilder๋ž€?: Java์—์„œ ๋ฌธ์ž์—ด์„ ํšจ์œจ์ ์œผ๋กœ ์กฐ์ž‘ํ•  ์ˆ˜ ์žˆ๋„๋ก ์ œ๊ณต๋˜๋Š” ํด๋ž˜์ŠคString์€ ๋ถˆ๋ณ€(immutable) ํŠน์„ฑ ๋•Œ๋ฌธ์— ๋ฌธ์ž์—ด์„ ๋ฐ˜๋ณต์ ์œผ๋กœ ์ˆ˜์ •ํ•˜๋ฉด ๋งค๋ฒˆ ์ƒˆ๋กœ์šด ๊ฐ์ฒด๊ฐ€ ์ƒ์„ฑ๋˜์–ด ์„ฑ๋Šฅ์ด ๋–จ์–ด์งˆ ์ˆ˜ ์žˆ๋‹ค. ์ด๋ฅผ ๋ณด์™„ํ•˜๊ธฐ ์œ„ํ•ด StringBuilder๋Š” ๋‚ด๋ถ€ ๋ฒ„ํผ(buffer) ๋ฅผ ์ด์šฉํ•˜์—ฌ ๋ฌธ์ž์—ด์„ ๋ณ€๊ฒฝํ•  ์ˆ˜ ์žˆ๊ฒŒ ํ•ด์ค€๋‹ค.  ๐Ÿ“Š *๋ฒ„ํผ(buffer) ์ฐธ๊ณ ๋ฒ„ํผ๋Š” ๊ฐ„๋‹จํžˆ ๋งํ•ด ์ž„์‹œ ์ €์žฅ ๊ณต๊ฐ„์ด๋‹ค. StringBuilder๋Š” ๋ฌธ์ž์—ด์„ ๋ถ™์ผ ๋•Œ๋งˆ๋‹ค ์ƒˆ๋กœ์šด ๊ฐ์ฒด๋ฅผ ๋งŒ๋“ค์ง€ ์•Š๊ณ , ๋‚ด๋ถ€ ๋ฒ„ํผ์— ๊ณ„์† ๋‚ด์šฉ์„ ์ถ”๊ฐ€ํ•˜๋ฉด์„œ ์ˆ˜์ •ํ•  ์ˆ˜ ์žˆ์Œ.String (๋ถˆ๋ณ€)"H" + "e" → "He" (์ƒˆ ๊ฐ์ฒด) + "l" → "Hel" (์ƒˆ ๊ฐ์ฒด) + "l" → "Hell" (์ƒˆ ๊ฐ์ฒด) + .. 2025. 4. 9.
[Java]์ฝ”๋”ฉ ํ…Œ์ŠคํŠธ์—์„œ ์ž์ฃผ ์“ฐ์ด๋Š” String Class Method ๋ชจ์Œ โญ ์ž์ฃผ ์“ฐ๋Š” String ํด๋ž˜์Šค ๋ฉ”์„œ๋“œ ํ‘œ๋กœ ์ •๋ฆฌํ•˜๊ธฐ( ๋นจ๊ฐ„์ƒ‰ ํ‘œ์‹œ๋Š” ์ด ์ค‘์—์„œ๋„ ๊ฐ€์žฅ ๋งŽ์ด ์“ฐ์ด๋Š” ๋ฉ”์„œ๋“œ๋“ค์ž„) Method๋ช…์„ค๋ช…์˜ˆ์‹œlength()๋ฌธ์ž์—ด ๊ธธ์ด ๋ฐ˜ํ™˜"abc".length() → 3charAt(int index)ํŠน์ • ์ธ๋ฑ์Šค์˜ ๋ฌธ์ž ๋ฐ˜ํ™˜"abc".charAt(1) → 'b'substring(int start, int end)๋ถ€๋ถ„ ๋ฌธ์ž์—ด ์ถ”์ถœ (end๋Š” ์ œ์™ธ)"abcdef".substring(1, 4) → "bcd"equals(String other)๋ฌธ์ž์—ด ๋น„๊ต (๋Œ€์†Œ๋ฌธ์ž ๊ตฌ๋ถ„)"abc".equals("ABC") → falseequalsIgnoreCase(String other)๋ฌธ์ž์—ด ๋น„๊ต (๋Œ€์†Œ๋ฌธ์ž ๋ฌด์‹œ)"abc".equalsIgnoreCase("ABC") → truetoCharArray(.. 2025. 4. 8.
[MySQL]์ค‘๋ณต ์ œ๊ฑฐ ์‹œ ์‚ฌ์šฉํ•˜๋Š” DISTINCT ๐Ÿค” DISTINCT๋ž€?DISTINCT๋Š” ์ค‘๋ณต๋œ ํ–‰์„ ์ œ๊ฑฐํ•˜์—ฌ ์œ ์ผํ•œ ๊ฒฐ๊ณผ๋งŒ ๋ฐ˜ํ™˜ํ•œ๋‹ค.๊ธฐ๋ณธ ๋ฌธ๋ฒ•์€ ์•„๋ž˜์™€ ๊ฐ™์Œ.SELECT DISTINCT ์ปฌ๋Ÿผ1, ์ปฌ๋Ÿผ2, ...FROM ํ…Œ์ด๋ธ”๋ช…;  ๐Ÿ‘จ‍๐Ÿ’ป DISTINCT ์˜ˆ์‹œSELECT DISTINCT o.customer_id, o.order_id, o.delivery_status, COUNT(o.product_id) OVER ( PARTITION BY o.customer_id, o.order_id, o.delivery_status ) AS product_countFROM orders oWHERE o.is_cancelled = 'N'; DISTINCT๋ฅผ ํ™œ์šฉํ•ด, ๊ณ ๊ฐ ID, ์ฃผ๋ฌธ ID, ๋ฐฐ์†ก ์ƒํƒœ๊ฐ€ ๋™์ผํ•œ ๊ฒฝ์šฐ ์ค‘๋ณต์„ .. 2025. 4. 3.
โญGit Flow์™€ ๋ช…๋ น์–ด ๋ชจ์Œzipโญ Git์„ ์“ธ ๋•Œ ํ•ญ์ƒ ํ—ท๊ฐˆ๋ ธ๋˜ ๋กœ์ปฌ/์›๊ฒฉ ์ €์žฅ์†Œ์˜ ๊ฐœ๋…, ๋ธŒ๋žœ์น˜ ํ๋ฆ„, ๊ทธ๋ฆฌ๊ณ  ์ž์ฃผ ์“ฐ๋Š” ๋ช…๋ น์–ด๋“ค์„ ์ •๋ฆฌํ•ด๋ดค๋‹ค. ์‹ค์ œ๋กœ ์ž์ฃผ ์“ฐ์ด๋Š” ํ๋ฆ„์„ ๋”ฐ๋ผ๊ฐ€๋ฉฐ Git ๋ช…๋ น์–ด๋ฅผ ์ •๋ฆฌํ–ˆ๋‹ค.๐Ÿ“ Git ์ €์žฅ์†Œ์˜ ๊ธฐ๋ณธ ๊ตฌ์กฐโœ… ๋กœ์ปฌ ์ €์žฅ์†Œ :๋‚ด ์ปดํ“จํ„ฐ์— ์žˆ๋Š” Git ์ €์žฅ์†Œ- clone ๋ช…๋ น์–ด๋ฅผ ํ†ตํ•ด ์›๊ฒฉ ์ €์žฅ์†Œ๋ฅผ ๋ณต์‚ฌํ•ด ์ƒ์„ฑ๋จ- ๋กœ์ปฌ ์ €์žฅ์†Œ์—๋Š” ๊ธฐ๋ณธ ๋ธŒ๋žœ์น˜(๋ณดํ†ต main)๋งŒ ์‹ค์ œ๋กœ ๋งŒ๋“ค์–ด์ง€๊ณ ,์›๊ฒฉ ๋ธŒ๋žœ์น˜๋“ค์€ origin/* ํ˜•ํƒœ๋กœ ์Šค๋ƒ…์ƒท์ฒ˜๋Ÿผ ์ฐธ์กฐ ์ •๋ณด๋งŒ ์กด์žฌ โœ… ์›๊ฒฉ ์ €์žฅ์†Œ- GitHub, GitLab ๋“ฑ ์˜จ๋ผ์ธ ์„œ๋ฒ„์— ์กด์žฌํ•˜๋Š” Git ์ €์žฅ์†Œ- ์—ฌ๋Ÿฌ ์‚ฌ์šฉ์ž๊ฐ€ ๊ณต๋™์œผ๋กœ ํ˜‘์—…ํ•  ์ˆ˜ ์žˆ๋Š” ์ค‘์•™ ์ €์žฅ์†Œ ์—ญํ•  โœ… origin- ์›๊ฒฉ ์ €์žฅ์†Œ์˜ ๊ธฐ๋ณธ ์ด๋ฆ„ (alias)=> origin/main, origin/develop์ฒ˜๋Ÿผ ํ‘œ์‹œ๋˜๋ฉฐ,.. 2025. 4. 1.
Git์„ ํ™œ์šฉํ•œ ์ฝ”๋”ฉํ…Œ์ŠคํŠธ ํ˜‘์—… ๋ฐฉ๋ฒ• (์Šคํ„ฐ๋””์šฉ ํด๋” ๊ตฌ์กฐ, ํ˜‘์—… ๋ฐฉ์‹-PR ๋ฆฌ๋ทฐ, ๊ธฐํƒ€ ํŒ) ์ฝ”๋”ฉํ…Œ์ŠคํŠธ ์Šคํ„ฐ๋””๋ฅผ ์‹œ์ž‘ํ–ˆ๋Š”๋ฐ, ํ˜ผ์ž ํ•ด๋ณด๋ ค ํ•  ๋•Œ๋ณด๋‹ค ๋” ๋™๊ธฐ๋ถ€์—ฌ๊ฐ€ ๋˜๊ณ  ์ข‹์€ ๊ฒƒ ๊ฐ™๋‹ค.์—ญ์‹œ ์˜์ง€๊ฐ€ ์•ฝํ•ด์งˆ ๋• ํŒ€ํ”Œ์ด ์ตœ๊ณ ์˜ ์ฒ˜๋ฐฉโœจํ•จ๊ป˜ ์Šคํ„ฐ๋”” ํ•  ํŒ€์›์˜ ์ œ์•ˆ์œผ๋กœ Git์„ ํ™œ์šฉํ•˜์—ฌ ์ž‘์„ฑํ•œ ์ฝ”๋“œ๋ฅผ ๊ด€๋ฆฌํ•˜๊ณ  ์„œ๋กœ ํ”ผ๋“œ๋ฐฑ ์ฃผ๊ณ ๋ฐ›๊ธฐ๋กœ ํ–ˆ๋‹ค. ๐Ÿ“š ์ €์žฅ์†Œ ์„ค๊ณ„ & ํด๋” ๊ตฌ์กฐ์„œ๋กœ์˜ ์ฝ”๋“œ๊ฐ€ ์„ž์ด์ง€ ์•Š๋„๋ก ๊ฐœ์ธ๋ณ„ ํด๋”๋ฅผ ๋งŒ๋“ค๊ณ , ๊ทธ ์•ˆ์— ์‚ฌ์ดํŠธ ๋ฐ ๋‚œ์ด๋„๋ณ„๋กœ ๋‚˜๋ˆ„์–ด ๊ด€๋ฆฌํ–ˆ๋‹ค.commit-to-solveโ”œโ”€โ”€ ๋‚ด ์ด๋ฆ„โ”‚ โ”œโ”€โ”€ programmersโ”‚ โ”‚ โ”œโ”€โ”€ level-0โ”‚ โ”‚ โ”œโ”€โ”€ level-1โ”‚ โ”‚ โ””โ”€โ”€ level-2โ”‚ โ”œโ”€โ”€ baekjoonโ”‚ โ”‚ โ”œโ”€โ”€ bronzeโ”‚ โ”‚ โ”œโ”€โ”€ silverโ”‚ โ”‚ โ””โ”€โ”€ goldโ”‚ โ””โ”€โ”€ leetcodeโ”‚ โ”œโ”€โ”€.. 2025. 3. 24.
[ERD Tool]DA#Modeler๋กœ ๋…ผ๋ฆฌ/๋ฌผ๋ฆฌERD ์ƒ์„ฑํ•˜๊ธฐ (DB๋ฆฌ๋ฒ„์Šค ํ™œ์šฉ-MySQL) DA#Modeler์˜ ๊ธฐ์—…์šฉ ๋ผ์ด์„ ์Šค๊ฐ€ ์žˆ์–ด, ํ•ด๋‹น ํˆด๋กœ ๋…ผ๋ฆฌ/๋ฌผ๋ฆฌ ERD๋ฅผ ์ƒ์„ฑํ•ด๋ณด์•„์„œ ์ •๋ฆฌํ•ด๋ณด๋ ค๊ณ  ํ•œ๋‹ค.์ฒ˜์Œ์— ํŒŒ์ผ ๋ฆฌ๋ฒ„์Šค๋ฅผ ํ™œ์šฉํ•ด ๊ทธ๋ฆฌ๋ ค๊ณ  ํ–ˆ๋Š”๋ฐ, ํ…Œ์ด๋ธ” ์ •์˜์„œ์™€ ์ปฌ๋Ÿผ ์ •์˜์„œ๊ฐ€ ๊ฐ๊ฐ ๋”ฐ๋กœ ํ•„์š”ํ–ˆ๋‹ค.ํ…Œ์ด๋ธ” ์ •์˜์„œ๋Š” ์žˆ์—ˆ์ง€๋งŒ ์ปฌ๋Ÿผ ์ •์˜์„œ๊ฐ€ ์—†์–ด, ์ด๊ฑธ ์ƒˆ๋กœ ๋งŒ๋“ค์–ด์„œ ํ•ด์•ผํ•˜๋‚˜ ๊ณ ๋ฏผํ•˜๋˜ ์ฐฐ๋‚˜ ์˜†์— DB๋ฆฌ๋ฒ„์Šค๋ผ๋Š” ๋ฒ„ํŠผ์ด ๋ณด์˜€๋‹ค. DB๋ฆฌ๋ฒ„์Šค๋Š” DB๋งŒ ODBC๋ฅผ ์ด์šฉํ•ด ์—ฐ๊ฒฐํ•˜๋ฉด ๋‹ค๋ฅธ ์–ด๋–ค ์„ค์ •๋„ ํ•„์š”์—†์ด ๋ฐ”๋กœ ERD ์ดˆ์•ˆ์„ ๊ทธ๋ ค์ค€๋‹ค.  ๐Ÿ’กDB๋ฆฌ๋ฒ„์Šค ํ™œ์šฉ๋ฒ• 1. DB๋ฆฌ๋ฒ„์Šค๋ฅผ ํด๋ฆญํ•˜๋ฉด ์•„๋ž˜์™€ ๊ฐ™์€ ์ฐฝ์ด ๋œฌ๋‹ค.   1-1. ODBC๊ฐ€ ์„ธํŒ…๋˜์–ด ์žˆ๋‹ค๋ฉด, ์•„๋ž˜ ์ž…๋ ฅ ์นธ๋“ค์„ ์ฑ„์šฐ๋ฉด ๋œ๋‹ค.          ๋‚ด๊ฐ€ ์“ฐ๋Š” DBMS์ธ MySQL ์„ ํƒํ•ด์ฃผ๊ณ , Data Source ์—๋Š” ์ ‘์† IP ์ฃผ์†Œ ์ž…๋ ฅํ•ด์ฃผ๊ณ , DB์‚ฌ์šฉ์ž๋ช…๊ณผ .. 2025. 3. 20.
[2024 ์ œ 55ํšŒ SQLD]๋น„์ „๊ณต์ž ๊ฐœ๋ฐœ์ž 2์ฃผ ๋งŒ์— ํ•ฉ๊ฒฉํ•˜๊ธฐ ( ๊ต์žฌ O ) 4๊ฐœ์›” ์ „ ๋ณธ ์‹œํ—˜ ํ›„๊ธฐ์ž…๋‹ˆ๋‹คโญ ์–ผ๋งˆ ์ „ SQLD ์‹œํ—˜์ด ์žˆ์—ˆ๋‹ค๊ณ  ์•Œ๊ณ  ์žˆ๋Š”๋ฐ, ๋‹ค๋“ค ์ž˜ ๋ณด์…จ๊ธฐ๋ฅผ ๋ฐ”๋ผ๋ฉฐ ๋‹ค์Œ ์‹œํ—˜์„ ์ค€๋น„ํ•˜๋Š” ๋น„์ „๊ณต์ž ๊ฐœ๋ฐœ์ž๋“ค์„ ์œ„ํ•œ SQLD ์‹œํ—˜ ํ›„๊ธฐ์ž…๋‹ˆ๋‹ค. (๋ˆ„๊ฐ€ ์ฝ๊ธฐ๋Š” ํ• ์ง€.. ์ž˜ ๋ชจ๋ฅด๊ฒ ์ง€๋งŒ์š”..)๊ฐœ์ธ์ ์œผ๋ก  ์ •์ฒ˜๊ธฐ๋ณด๋‹ค ๋” ์–ด๋ ต๊ฒŒ ๋Š๊ปด์ง„ SQLD .. ใ…Ž ใ…Ž  ๋‹ค๋“ค SQLD๋Š” ์ผ์ฃผ์ผ ๊ณต๋ถ€ํ•˜๋Š”๊ฑฐ๋ผ๊ณ  ํ•˜๊ณ .. ๊ฐœ๋ฐœ์ž๋“ค์€ ํ•˜๋ฃจ๋งŒ ๊ณต๋ถ€ํ•˜๊ณ  ๊ฐ”๋‹ค๋Š” ์‚ฌ๋žŒ๋„ ์žˆ๊ตฌ .. ์ €๋Š” ์‹ค๋ฌด 6๊ฐœ์›”์ฐจ์ฏค์ด๋ผ ๊ทธ๋žฌ์„๊นŒ์š”..? ์™œ ์–ด๋ ค์› ์ฃ ..? ๐Ÿ˜‚ ๊ทผ๋ฐ ์‚ฌ์‹ค ์ €๋„ 8์ผ ์ •๋„ ๊ณต๋ถ€ํ•œ๊ฑฐ ๊ฐ™๊ธดํ•ฉ๋‹ˆ๋‹ค ํ•˜ํ•˜ ์‹œํ—˜์ด ์ผ์š”์ผ์ด ์—ˆ๊ณ , ์ „ ์ฃผ ํ† ์š”์ผ๋ถ€ํ„ฐ ์ „๋‚  ํ† ์š”์ผ๊นŒ์ง€ ์—ด์‹ฌํžˆ ๋˜ ํ’€์—ˆ์Šต๋‹ˆ๋‹ค. ๋…ธ๋žญ์ด๋ฅผ์š” ใ…Žใ…Ž ์ •์ฒ˜๊ธฐ๋Š” ๋ฌธ์ œ์ง‘๋ณด๋‹ค ๊ธฐ์ถœ์„ ํ‘ธ๋Š” ๊ฒŒ ํšจ์œจ์ ์ด๋ผ๊ณ  ์ƒ๊ฐํ–ˆ๊ธฐ ๋•Œ๋ฌธ์— ๊ต์žฌ๋ฅผ ์‚ฌ์ง€ ์•Š์•˜์ง€๋งŒ,SQLD๋Š” ํ›„๊ธฐ๋ฅผ ๋ณด๋‹ˆ ๋…ธ๋žญ์ด๋ฅผ.. 2025. 3. 14.
[DB์˜ค๋ฅ˜/MySQL] java.sql.SQLException: Cannot create PoolableConnectionFactory java.sql.SQLException: Cannot create PoolableConnectionFactory (null,  message from server: "Host 'IP์ฃผ์†Œ' is blocked because of many connection errors; unblock with 'mysqladmin flush-hosts'") ์ด ์˜ค๋ฅ˜๋Š” MySQL ์„œ๋ฒ„์—์„œ ํŠน์ • IP๊ฐ€ ๋„ˆ๋ฌด ๋งŽ์€ ์—ฐ๊ฒฐ ์˜ค๋ฅ˜(Connection Errors)๋ฅผ ๋ฐœ์ƒ์‹œ์ผœ ์ž๋™์œผ๋กœ ์ฐจ๋‹จ๋˜์—ˆ์„ ๋•Œ ๋ฐœ์ƒํ•จ. ๋ฒŒ์จ ํšŒ์‚ฌ์—์„œ ๋‘ ๋ฒˆ ์ •๋„ ๊ฒช๊ณ  ๊ธฐ๋ก์„ ํ•˜๋ ค ํ•œ๋‹ค. ํ•ด๊ฒฐ์€ ๊ฐ„๋‹จํ•˜๋‹ค. ์œ„์— ๊ฒฝ๊ณ ๋ฌธ์— ๋‚˜์˜จ ๊ฒƒ๊ณผ ๊ฐ™์ด unblock with 'mysqladmin flush-hosts ํ•ด์ฃผ๋ฉด ๋œ๋‹ค. MySQL ์ ‘์†์ด ํ•ด์ œ๊ฐ€ ์•ˆ๋๋‹ค๋ฉด, ์‚ฌ์šฉ์ค‘์ธ DB.. 2025. 2. 18.
[2024 ์ •๋ณด์ฒ˜๋ฆฌ๊ธฐ์‚ฌ]๋น„์ „๊ณต์ž ๋…ํ•™ ๋ฐฉ๋ฒ• & ํ•ฉ๊ฒฉ ํ›„๊ธฐ ( ๊ต์žฌ X ) ์ฃผ๋ณ€ ์ „๊ณต์ž & ๋น„์ „๊ณต์ž ๊ฐœ๋ฐœ์ž ๋ชจ๋‘๊ฐ€ ์ •๋ณด์ฒ˜๋ฆฌ๊ธฐ์‚ฌ๊ฐ€ 19๋…„๋„ ์ดํ›„๋กœ ์–ด๋ ค์›Œ์ ธ์„œ ํ•œ ๋ฒˆ์— ๋ถ™๊ธฐ ์–ด๋ ต๋‹ค๊ณ  ๊ฒ์„ ๋งŽ์ด ์คฌ์—ˆ๋‹ค.. ๊ทธ๋ž˜์„œ ๋‚˜๋„ ํ•œ ๋ฒˆ์— ๋ชป๋ถ™์„๊ฑฐ๋ผ ์ƒ๊ฐํ–ˆ๋Š”๋ฐ .. ํ•œ ๋ฒˆ์— ๋ถ™์–ด๋ฒ„๋ฆผ!!!! ๋ฟŒ๋“ฏ ๐Ÿ˜†   ๋น„์ „๊ณต์ž์ด๊ณ  23๋…„ 10์›”์—  ์ฝ”๋”ฉ์˜ ์„ธ๊ณ„์— ์ฒซ์ž…๋ฌธํ–ˆ๋‹ค. 6๊ฐœ์›” ๊ณผ์ •์˜ ๊ตญ๋น„ ์ˆ˜์—…์„ ๋“ฃ๋Š” ์ค‘๊ฐ„์— 24๋…„ 1ํšŒ์ฐจ ํ•„๊ธฐ ์‹œํ—˜์„ ๋ดค๊ณ , ์ˆ˜์—… ์ˆ˜๋ฃŒํ•˜์ž๋งˆ์ž 2์ฃผ ๋’ค์— 1ํšŒ์ฐจ ์‹ค๊ธฐ๋ฅผ ๋ณผ ์ˆ˜ ์žˆ์—ˆ์œผ๋‚˜ ์—ฌํ–‰์„ ๊ฐ€๊ฒŒ ๋˜์–ด์„œ ์Šคํ‚ตํ–ˆ๋‹ค ใ…Žใ…Ž๊ทธ๋ฆฌ๊ณ  2ํšŒ์ฐจ ์‹ค๊ธฐ๋Š” ์ž…์‚ฌ ํ›„ ํšŒ์‚ฌ ๋‹ค๋‹ˆ๋ฉด์„œ ๋ดค๋‹ค.  ๐Ÿ”ด ํ•„๊ธฐํ•„๊ธฐ ๊ณต๋ถ€ ๊ต์žฌ๋Š” ์š”์•ฝ์ง‘ + cbt ๊ธฐ์ถœ ์ž…๋‹ˆ๋‹ค. ์ •๋ง ํ•„์š”ํ•œ ๋ถ€๋ถ„๋งŒ ์š”์•ฝ์ •๋ฆฌ ํ•ด๋†“์œผ์‹  ๋ถ„์„ ์ฐพ์•˜๋Š”๋ฐ, ์‹ฌ์ง€์–ด ๋ฌด๋ฃŒ๋‹ค..! ์•„๋ž˜ ๋งํฌ๊ฐ€์„œ ๋‹ค์šด ๊ณ ๊ณ  ๐Ÿ”ฝhttps://www.happycampus.com/store/z.. 2025. 1. 9.
์„œ๋ฒ„(Server)์™€ ์›น์„œ๋ฒ„(Web Server) ๊ฐœ๋… ์ •๋ฆฌ ๐Ÿ‘จ‍๐Ÿซ์„œ๋ฒ„(Server)์™€ ์›น์„œ๋ฒ„(Web Server)์˜ ์ฐจ์ด์ ์„œ๋ฒ„๋Š” ๋ฐ์ดํ„ฐ๋ฅผ ์ €์žฅํ•˜๊ณ  ์ฒ˜๋ฆฌํ•˜๋Š” ๋‹ค์–‘ํ•œ ์—ญํ• ์„ ์ˆ˜ํ–‰ํ•˜๋ฉฐ, ์›น์„œ๋ฒ„๋Š” ์„œ๋ฒ„์˜ ํ•œ ์ข…๋ฅ˜๋กœ ํด๋ผ์ด์–ธํŠธ ์š”์ฒญ์„ ๊ฐ€์žฅ ๋จผ์ € ์ฒ˜๋ฆฌํ•˜๋Š” ์—ญํ• ๋กœ์„œ ์„œ๋ฒ„๊ฐ€ ์›น์„œ๋ฒ„๋ณด๋‹ค ํฌ๊ด„์ ์ธ ๊ฐœ๋…์ด๋‹ค.1. ์„œ๋ฒ„(Server)๋ž€?์„œ๋ฒ„๋Š” ๋ฐ์ดํ„ฐ๋ฅผ ์ €์žฅํ•˜๊ณ  ์ฒ˜๋ฆฌํ•˜๊ฑฐ๋‚˜ ์ „์†กํ•˜๋Š” ์—ญํ• ์„ ํ•˜๋Š” ์ปดํ“จํ„ฐ๋‚˜ ์†Œํ”„ํŠธ์›จ์–ด๋‹ค.ํด๋ผ์ด์–ธํŠธ(์‚ฌ์šฉ์ž)๋กœ๋ถ€ํ„ฐ ์š”์ฒญ์„ ๋ฐ›์•„ ํ•„์š”ํ•œ ์„œ๋น„์Šค๋ฅผ ์ œ๊ณตํ•œ๋‹ค.ํŠน์ง•:๋‹ค์–‘ํ•œ ์—ญํ• : ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค ์„œ๋ฒ„, ํŒŒ์ผ ์„œ๋ฒ„, ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜ ์„œ๋ฒ„ ๋“ฑ ์—ฌ๋Ÿฌ ์ข…๋ฅ˜๊ฐ€ ์žˆ๋‹ค.ํ”„๋กœํ† ์ฝœ: ๋‹ค์–‘ํ•œ ํ”„๋กœํ† ์ฝœ(HTTP, FTP, SMTP ๋“ฑ)์„ ์‚ฌ์šฉํ•œ๋‹ค.ํด๋ผ์ด์–ธํŠธ-์„œ๋ฒ„ ๋ชจ๋ธ: ํด๋ผ์ด์–ธํŠธ๊ฐ€ ์š”์ฒญ์„ ๋ณด๋‚ด๋ฉด ์„œ๋ฒ„๋Š” ์ด์— ๋Œ€ํ•œ ์‘๋‹ต์„ ๋ฐ˜ํ™˜ํ•œ๋‹ค.์˜ˆ์‹œ:๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค ์„œ๋ฒ„: MySQL, PostgreSQL ๋“ฑ์ด .. 2025. 1. 8.
[Eclipse ์˜ค๋ฅ˜]An internal error occurred during: "Initializing Java Tooling". java.lang.NullPointerException ์ดํด๋ฆฝ์Šค๋ฅผ ์ผฐ๋Š”๋ฐ ๊ฐ‘์ž๊ธฐ ์ด๋Ÿฐ ์—๋Ÿฌ๊ฐ€ ๋–ด๋‹ค. ์›์ธ์€ ๊ตฌ๊ธ€์—์„œ ์ฐพ์ง€ ๋ชปํ•ด GPT์—๊ฒŒ ๋ฌผ์–ด๋ณด๋‹ˆ ์—ฌ๋Ÿฌ๊ฐ€์ง€๋ฅผ ์ œ์‹œํ•ด์คฌ๋‹ค. ๊ทธ ์ค‘ ์•„๋ž˜์˜ ์ด์œ ๊ฐ€ ๊ฐ€์žฅ ์œ ๋ ฅํ•ด๋ณด์˜€๋‹ค.Workspace ๋””๋ ‰ํ† ๋ฆฌ์˜ ์†์ƒ.metadata ๋””๋ ‰ํ† ๋ฆฌ๋‚˜ ์›Œํฌ์ŠคํŽ˜์ด์Šค ๊ด€๋ จ ํŒŒ์ผ์ด ์†์ƒ๋˜์—ˆ์„ ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.ํ”„๋กœ์ ํŠธ ์„ค์ •์ด ์˜ฌ๋ฐ”๋ฅด๊ฒŒ ๋กœ๋“œ๋˜์ง€ ์•Š์•„ Java Tooling ์ดˆ๊ธฐํ™” ๋‹จ๊ณ„์—์„œ ์˜ค๋ฅ˜๊ฐ€ ๋ฐœ์ƒํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ๋‹คํ–‰ํžˆ ๊ตฌ๊ธ€๋งํ•ด์„œ ๋‚˜์˜จ ํ•ด๊ฒฐ๋ฐฉ๋ฒ•์€ ๊ฐ„๋‹จํ–ˆ๋‹ค. 1) ์ดํด๋ฆฝ์Šค๋ฅผ ๋‹ซ๋Š”๋‹ค. ์•„๋ž˜ ๊ฒฝ๋กœ๋กœ ํด๋”๋ฅผ ์ฐพ์•„ ๋“ค์–ด๊ฐ„๋‹ค.     \1.Workspace\.metadata\.plugins\org.eclipse.core.resources\.projects  2) ๊ทธ๋Ÿผ ์•„๋ž˜ ์ด๋ฏธ์ง€์— ๋ณด์ด๋Š” ๊ฒƒ๊ณผ ๊ฐ™์ด ์—ฌ๋Ÿฌ ํด๋”๋“ค์ด ๋ณด์ธ๋‹ค.    RemoteSystemsTempF.. 2024. 12. 27.
[์„œ๋ฒ„ ์˜ค๋ฅ˜]ํ†ฐ์บฃ(TOMCAT) ์„œ๋ฒ„ ์ถฉ๋Œ(=ํฌํŠธ ์ถฉ๋Œ) ์—๋Ÿฌ ํ†ฐ์บฃ์„œ๋ฒ„๋ฅผ ์‹คํ–‰ํ•˜๋ ค๋Š”๋ฐ ์œ„์™€ ๊ฐ™์ด ํ†ฐ์บฃ ์„œ๋ฒ„๊ฐ€ ์ด๋ฏธ ์‚ฌ์šฉ์ค‘์ด๋ผ๋Š” ๊ฒฝ๊ณ ์ฐฝ์ด ๋œจ๋ฉด, ๋Œ€์ฒด๋กœ ํฌํŠธ๊ฐ€ ์ถฉ๋Œ๋‚œ ๋ฌธ์ œ๋‹ค.๋ช…๋ นํ”„๋กฌํ”„ํŠธ์—์„œ ํ•ด๋‹น ํฌํŠธ๊ฐ€ ์‚ฌ์šฉํ•˜๋Š” PID๋ฅผ ํ™•์ธํ•˜์—ฌ ํ”„๋กœ์„ธ์Šค๋ฅผ ์ข…๋ฃŒ์‹œ์ผœ์ฃผ๋ฉด ๊ฐ„๋‹จํ•˜๊ฒŒ ํ•ด๊ฒฐ๋œ๋‹ค. 1. ํ•ด๋‹น ํฌํŠธ๋ฅผ ์‚ฌ์šฉ์ค‘์ธ PID ํ™•์ธํ•œ๋‹ค.    [ํฌํŠธ๋ฒˆํ˜ธ] ๋ถ€๋ถ„์— ํ™•์ธํ•˜๊ณ ์ž ํ•˜๋Š” ํฌํŠธ๋ฒˆํ˜ธ ์ž…๋ ฅ netstat -ano | findstr :[ํฌํŠธ๋ฒˆํ˜ธ]  ์ถœ๋ ฅ ์˜ˆ์‹œ:TCP 0.0.0.0:8080 0.0.0.0:0 LISTENING 1234 ์œ„์™€ ๊ฐ™์ด ์ถœ๋ ฅ๋˜๋ฉด 1234๊ฐ€ PID ๋ฒˆํ˜ธ๋‹ค. 2. PID๋กœ ํ”„๋กœ์„ธ์Šค ์ข…๋ฃŒํ•œ๋‹ค.    [PID๋ฒˆํ˜ธ] ๋ถ€๋ถ„์— ์œ„์—์„œ ํ™•์ธํ•œ ๋ฒˆํ˜ธ ์ž…๋ ฅtaskkill /PID [PID๋ฒˆํ˜ธ] /F  ์•„๋ž˜ ์ด๋ฏธ์ง€๋กœ ํ™•์ธํ•ด๋ณด๋ฉด ๋นจ๊ฐ„์ƒ‰ ๋ฐ•์Šค ๋ถ€๋ถ„๋งŒ ์•Œ๋งž๊ฒŒ ์ž…๋ ฅํ•ด์ฃผ๋ฉด ํ•ด๊ฒฐ ์™„๋ฃŒ - โญ 2024. 12. 9.
[DB ์˜ค๋ฅ˜/MySQL]1038 Out of sort memory, consider increasing server sort buffer size ์ž˜ ์šด์˜๋˜๋˜ ๊ฒŒ์‹œํŒ์ด ๊ฐ‘์ž๊ธฐ ์—๋Ÿฌ๊ฐ€ ๋‚œ๋‹ค๊ณ  ํ•ด์„œ ๋ดค๋”๋‹ˆ, sort memory๊ฐ€ ์ถฉ๋ถ„ํ•˜์ง€ ์•Š์•„์„œ ์ƒ๊ธด ๋ฌธ์ œ์˜€๋‹ค.๋จผ์ € sorting ๋™์žฅ ๋ฐฉ์‹์„ ์‚ดํŽด๋ณด๋ฉด..  ๐ŸŸกMySQL์—์„œ sorting ๋™์ž‘ ๋ฐฉ์‹๊ธฐ๋ณธ์ ์œผ๋กœ MySQL์—์„œ ์ž์‹ ์˜ buffer๋ณด๋‹ค ํฐ ๋ฐ์ดํ„ฐ๋ฅผ ๋Œ€์ƒ์œผ๋กœ ์ž‘์—…ํ•ด์•ผํ•  ๋• ์œ„ ๊ทธ๋ฆผ๊ณผ ๊ฐ™์€ ํ๋ฆ„์œผ๋กœ ๋™์ž‘ํ•œ๋‹ค . ์ž‘์—…์šฉ ๋ฒ„ํผ์— ๋ฐ์ดํ„ฐ๋ฅผ ์˜ฌ๋ฆฌ๊ณ , ๊ทธ๋Ÿผ์—๋„ ์ž‘์—… ๋Œ€์ƒ์ด ๋” ๋‚จ์•˜๋‹ค๋ฉด ๋ฒ„ํผ์— ์˜ฌ๋ฆฐ ๋ฐ์ดํ„ฐ๋ฅผ temp file๋กœ ๋ณด๋‚ธ๋‹ค.๊ทธ temp file๋“ค์„ mergeํ•˜๊ณ , mergeํ•œ ๊ฐ’๋“ค ๋ผ๋ฆฌ ์ •๋ ฌํ•œ ๋’ค, ๊ฒฐ๊ณผ๋ฅผ ๋ฐ˜ํ™˜ํ•œ๋‹ค๊ทธ๋ฆฌ๊ณ  buffer ๋ฉ”๋ชจ๋ฆฌ๋Š” sort ์™„๋ฃŒ ํ›„ ์ฆ‰์‹œ ์‹œ์Šคํ…œ์œผ๋กœ ๋ฐ˜๋‚ฉ๋˜๋Š” ๋ฉ”๋ชจ๋ฆฌ๊ณต๊ฐ„์ด๋‹ค ์œ„์™€ ๊ฐ™์ด ๋™์ž‘ํ•˜๋Š” sorting ํ–‰์œ„์—์„œ sort buffer ๋ฉ”๋ชจ๋ฆฌ๊ฐ€ ๋ถ€์กฑํ•˜๋ฉด ๋‚˜ํƒ€๋‚˜๋Š” ์˜ค๋ฅ˜๋‹ค.์—.. 2024. 11. 4.
[Java] ํด๋ž˜์Šค ํŒŒ์ผ -> ์ž๋ฐ” ํŒŒ์ผ๋กœ ๋””์ปดํŒŒ์ผ ํ•˜๋Š” ๋ฒ•(jad decomplier ์‚ฌ์šฉ) ์„œ๋ฒ„์— ์˜ฌ๋ ค๋†จ๋˜ class ํŒŒ์ผ์„ ๋“ค์—ฌ๋‹ค ๋ด์•ผ ํ•  ๊ฒฝ์šฐ๊ฐ€ ์žˆ๋‹ค. ๊ทธ๋Ÿฌ๋‚˜ ํด๋ž˜์Šค ํŒŒ์ผ (.class ํŒŒ์ผ)์€ ์ž๋ฐ” ์†Œ์Šค ์ฝ”๋“œ๊ฐ€ ์ปดํŒŒ์ผ๋œ ๋ฐ”์ดํŠธ์ฝ”๋“œ๋กœ, ์ž๋ฐ” ๊ฐ€์ƒ ๋จธ์‹ (JVM)์ด ์‹คํ–‰ํ•  ์ˆ˜ ์žˆ๋Š” ํ˜•์‹์ด๋ผ ์‚ฌ๋žŒ์ด๋‚˜ ์ปดํ“จํ„ฐ๊ฐ€ ๋ฐ”๋กœ ์ฝ์„ ์ˆ˜ ์žˆ๋Š” ์ผ๋ฐ˜ ํ…์ŠคํŠธ ํŒŒ์ผ์ด ์•„๋‹ˆ๋‹ค. ์ฆ‰, ์†Œ์Šค๋ฅผ ๋ณด๊ณ  ์‹ถ์œผ๋ฉด ์‚ฌ๋žŒ์ด ์ฝ์„ ์ˆ˜ ์žˆ๋Š” ํ…์ŠคํŠธ ํŒŒ์ผ์ธ ์ž๋ฐ” ํŒŒ์ผ(.java ํŒŒ์ผ)์„ ํ…์ŠคํŠธ ํŽธ์ง‘๊ธฐ๋‚˜ IDE(ํ†ตํ•ฉ ๊ฐœ๋ฐœ ํ™˜๊ฒฝ)์—์„œ ์—ด์–ด์•ผ ํ•œ๋‹ค.  java ํŒŒ์ผ์„ class ํŒŒ์ผ๋กœ ๋ณ€ํ™˜ํ•˜๋Š” ๊ฒƒ์„ ์ปดํŒŒ์ผ์ด๋ผ๊ณ  ํ•˜๋‹ˆ,class ํŒŒ์ผ์„ java ํŒŒ์ผ๋กœ ๋ณ€ํ™˜ํ•˜๋Š” ๊ฒƒ์€ ๋””์ปดํŒŒ์ผ์ด ๋œ๋‹ค.  โญโญโญโญโญโญ๋””์ปดํŒŒ์ผ ํ•˜๋Š” ๋ฒ•โญโญโญโญโญโญ 1. ๋จผ์ € ์•„๋ž˜ ์ฃผ์†Œ๋กœ ๊ฐ€์„œ JAD ๋””์ปดํŒŒ์ผ๋Ÿฌ๋ฅผ ์„ค์น˜ํ•˜๊ณ , ๋‹ค์šด๋กœ๋“œ ๋ฐ›์€ ์••์ถ•ํŒŒ์ผ์„ ํ‘ผ๋‹ค. https://varaneck.. 2024. 9. 24.
[Java]split() ๋ฉ”์„œ๋“œ 2024 2ํšŒ์ฐจ ์ •๋ณด์ฒ˜๋ฆฌ๊ธฐ์‚ฌ ์‹ค๊ธฐ ์‹œํ—˜ 20๋ฒˆ ๋ฌธ์ œ์— ๋‚˜์˜จ Java split ๋ฉ”์„œ๋“œ !  ์ฃผ์–ด์ง„ ๊ธฐ์ค€๊ฐ’์œผ๋กœ ๋ฌธ์ž์—ด์„ ๋ถ„ํ• ํ•˜๋Š”๊ฑด ์•Œ๊ฒ ๋Š”๋ฐ..์ฃผ์–ด์ง„ ๊ธฐ์ค€๊ฐ’์€ ๋ฌธ์ž์—ด ๋ฐฐ์—ด์— ๋“ค์–ด๊ฐ€๊ฒŒ ๋˜๋Š”๊ฑด์ง€ ์•„๋‹Œ์ง€ ํ—ท๊ฐˆ๋ ค์„œ ๊ฒฐ๊ตญ ๊ทธ ๋ฌธ์ œ๋Š” ํ‹€๋ ธ๋‹ค ๐Ÿคช๊ทธ๋žฌ๋Š”๋ฐ ์‹œํ—˜ ๋‹ค ๋ณด๊ณ  ๋‚˜๋‹ˆ๊นŒ ์‹ค๋ฌด ์ค‘์— ์“ธ ์ผ์ด ์žˆ์–ด์„œ ๋‹ค์‹œ ๋ณด๋Š” ๊น€์— ์ •๋ฆฌํ•ด๋ณธ๋‹ค.  ๐Ÿ‘จ‍๐Ÿ’ปsplit() ๋ฉ”์„œ๋“œ๋ž€?์ž๋ฐ”์˜ String ํด๋ž˜์Šค์— ํฌํ•จ๋œ ๋ฉ”์„œ๋“œ๋กœ, ๋ฌธ์ž์—ด์„ ํŠน์ • ๊ตฌ๋ถ„์ž(Delimiter)๋‚˜ ์ •๊ทœ ํ‘œํ˜„์‹์„ ๊ธฐ์ค€์œผ๋กœ ๋ถ„ํ• ํ•˜์—ฌ ๋ฐฐ์—ด๋กœ ๋ฐ˜ํ™˜ํ•ด์ฃผ๋Š” ๋ฉ”์„œ๋“œpublic String[] split(String regex)public String[] split(String regex, int limit) regex์—๋Š” ๋ถ„ํ• ์˜ ๊ธฐ์ค€์ด ๋  ๋ฌธ์ž ๋˜๋Š” ์ •๊ทœํ‘œํ˜„์‹์„ ๋„ฃ์–ด์ค€๋‹ค.lim.. 2024. 9. 11.
[์„œ๋ฒ„ ์˜ค๋ฅ˜]DB์™€ ์„œ๋ฒ„ ์‹œ๊ฐ„(Time Zone) ์ฐจ์ด ๋ฌธ์ œ DB์— ๊ฒŒ์‹œ๋ฌผ ๋“ฑ๋ก ์ผ์‹œ๊ฐ€  24-09-02 09:49:24 ๋กœ ์ €์žฅ๋˜์–ด ์žˆ๋Š”๋ฐ, ์ปจํŠธ๋กค๋Ÿฌ์—์„œ ๊ทธ ๊ธฐ๋ก์„ ๊ฐ€์ ธ์˜ค๋ฉด ์ž๊พธ 9์‹œ๊ฐ„ ๋’ค(24-09-02 18:49:24)๋กœ ์„ค์ •๋˜์–ด ์žˆ๋Š” ๋ฌธ์ œ๊ฐ€ ๋ฐœ์ƒํ•จ. ๋ฌธ์ œ์˜ ์›์ธ์€ ๋“ฑ๋ก ์ผ์‹œ ์ปฌ๋Ÿผ์˜ ๋ฐ์ดํ„ฐ ํƒ€์ž…์ด DATETIME์ด์˜€์Œ.์ด๋Ÿฐ ๊ฒฝ์šฐ ๋ฌธ์ž์—ด ์ž์ฒด๋ฅผ ๊ฐ€์ ธ์˜ค๋Š” ๊ฒƒ์ด ์•„๋‹ˆ๋ผ, ์„œ๋ฒ„ ์‹œ๊ฐ„์„ ๊ธฐ์ค€์œผ๋กœ ๊ฐ€์ ธ์™€์งˆ ์ˆ˜ ์žˆ์Œ.๊ทธ๋Ÿผ ์„œ๋ฒ„์‹œ๊ฐ„๊ณผ DB ์‹œ๊ฐ„์„ ๋งž์ถฐ์ฃผ๋ฉด ๋จ. ๊ตฌ๊ธ€๋ง ๊ฒฐ๊ณผ, TOMCAT ์„œ๋ฒ„ ํด๋” ์•„๋ž˜ > catalina.bat ํŒŒ์ผ ์‹คํ–‰ ํ›„ > set CATALINA_OPTS=-Duser.timezone=GMT+09:00 ์„ ์‚ฝ์ž…ํ•ด์ฃผ๋ฉด ๋œ๋‹ค๊ณ  ํ–ˆ๋‹ค.๊ทธ๋Ÿฐ๋ฐ catalina ๋ฐฐ์น˜ ํŒŒ์ผ์ด ์‹คํ–‰์ด ๋˜์ง€ ์•Š์•„์„œ notepad๋ฅผ ๊ด€๋ฆฌ์ž๊ถŒํ•œ์œผ๋กœ ์‹คํ–‰ ํ›„, [ํŒŒ์ผ] - [์—ด๊ธฐ] ๋กœ c.. 2024. 9. 2.
[MySQL]DATE_FORMAT ํ•จ์ˆ˜ ๐Ÿ”…DATE_FORMAT ํ•จ์ˆ˜MySQL์—์„œ ๋‚ ์งœ์™€ ์‹œ๊ฐ„์„ ํฌ๋งทํ•  ๋•Œ ์‚ฌ์šฉํ•˜๋Š” DATE_FORMAT ํ•จ์ˆ˜์—์„œ๋Š” ๋Œ€์†Œ๋ฌธ์ž์— ๋”ฐ๋ผ ๋‹ค์Œ๊ณผ ๊ฐ™์€ ์ฐจ์ด๊ฐ€ ์žˆ์Œ%Y: 4์ž๋ฆฌ ์—ฐ๋„ (์˜ˆ: 2024)%y: 2์ž๋ฆฌ ์—ฐ๋„ (์˜ˆ: 24)%m: 2์ž๋ฆฌ ์›” (01๋ถ€ํ„ฐ 12๊นŒ์ง€)%M: ์›” ์ด๋ฆ„ (์˜ˆ: January, February)%d: 2์ž๋ฆฌ ์ผ (01๋ถ€ํ„ฐ 31๊นŒ์ง€)%D: ์ผ์— ๋ถ™๋Š” ์ ‘๋ฏธ์‚ฌ (1st, 2nd, 3rd, ...)%c : ํ•œ ์ž๋ฆฌ ๋˜๋Š” ๋‘ ์ž๋ฆฌ ์›”์„ ํ‘œ์‹œํ•ฉ๋‹ˆ๋‹ค. (์˜ˆ: 1๋ถ€ํ„ฐ 12๊นŒ์ง€)   %e : ํ•œ ์ž๋ฆฌ ๋˜๋Š” ๋‘ ์ž๋ฆฌ ์ผ์„ ํ‘œ์‹œํ•ฉ๋‹ˆ๋‹ค. (์˜ˆ: 1๋ถ€ํ„ฐ 31๊นŒ์ง€) SELECT DATE_FORMAT(NOW(), '%Y-%m-%d') AS formatted_date; -- 2024-06-28SELECT DATE_FO.. 2024. 8. 30.
[DB ์˜ค๋ฅ˜/DBeaver]No active connection(MySQL) DBeaver ์˜ค๋ฅ˜DBeaver๋กœ mysql ์ฟผ๋ฆฌ๋ฅผ ์‹คํ–‰ํ•˜๋ ค๋Š”๋ฐ, ์•„๋ž˜์™€ ๊ฐ™์€ 'No active connection' ์ด๋ผ๋Š” ์˜ค๋ฅ˜๊ฐ€ ๋–ด๋‹ค.   ์—ฌํƒœ๊นŒ์ง€๋Š” ๋”ฐ๋กœ ์—ฐ๊ฒฐํ•ด์ค„ ํ•„์š” ์—†์ด ํ•œ ๋ฒˆ ์—ฐ๊ฒฐํ•ด๋†“์œผ๋ฉด ์ž˜ ์‹คํ–‰๋๋Š”๋ฐ, ๊ฐ€๋” ์ด๋Ÿฐ ๋ฌธ์ œ๊ฐ€ ์ƒ๊ธฐ๋‚˜ ๋ณด๋‹ค.์œ„์™€ ๊ฐ™์€ ์˜ค๋ฅ˜์ฐฝ์ด ๋–ด๋‹ค๋ฉด, DBeaver ์ฐฝ์˜ ์œ—๋ถ€๋ถ„์— N/A๋ผ๊ณ  ๋œฌ๊ฒŒ ๋ณด์ผ ๊ฒƒ์ด๋‹ค.์ €๊ธฐ๊ฐ€ ์—ฐ๊ฒฐ์ด ๋˜์–ด ์žˆ๋‹ค๋ฉด, N/A ๋Œ€์‹  ์—ฐ๊ฒฐํ•œ DB ์„œ๋ฒ„ ์ด๋ฆ„์ด ์จ์žˆ์–ด์•ผ ํ•œ๋‹ค!   ํ•ด๊ฒฐ ๋ฐฉ๋ฒ• Ctrl + 9 ์„ ๋ˆ„๋ฅด๋ฉด ์•„๋ž˜์™€ ๊ฐ™์€ ์ฐฝ์ด ๋œจ๊ณ , ๊ฑฐ๊ธฐ์„œ ์—ฐ๊ฒฐํ•  DB๋ฅผ ์„ ํƒํ•˜๊ณ  select ๋ฒ„ํŠผ์„ ๋ˆŒ๋Ÿฌ์ฃผ๋ฉด ๋œ๋‹ค.  ๊ทธ๋Ÿฌ๋ฉด ์•„๊นŒ N/A๋ผ๊ณ  ๋–ด๋˜ ๋ถ€๋ถ„์— ์‚ฌ์šฉํ•  DB๋ช…์ด ๋– ์žˆ๋Š”๊ฑธ ํ™•์ธํ•  ์ˆ˜ ์žˆ๋‹ค ใ…Žใ…Ž (ํšŒ์‚ฌ ํ”„๋กœ์ ํŠธ๋ช…์ด๋ผ ๋ชจ์ž์ดํฌ ์ฒ˜๋ฆฌํ•จ ) 2024. 6. 26.
๋ฐ˜์‘ํ˜•