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

CS4

SQLite ์™€ MySQL ์ฐจ์ด ํ”„๋กœ์ ํŠธ๋ฅผ ๊ตฌํ˜„ํ•˜๋ฉฐ ๋ณดํ†ต MySQL์„ ์ด์šฉํ•˜์˜€๋‹ค. ํ•˜์ง€๋งŒ ์ด๋ฒˆ์— ๊ฐ„๋‹จํ•œ ํ”„๋กœ์ ํŠธ ์—ฐ์Šต์„ ํ•˜๋ฉฐ SQLite๋ฅผ ์‚ฌ์šฉํ•˜๊ฒŒ ๋˜์—ˆ๊ณ ,๋‘˜์˜ ์ฐจ์ด๊ฐ€ ๊ถ๊ธˆํ•˜์—ฌ ๊ฐ„๋‹จํ•˜๊ฒŒ ์ •๋ฆฌํ•ด๋ณด๊ณ ์ž ํ•œ๋‹ค. ์šฐ์„  SQLite์™€ MySQL์€ ๋ชจ๋‘ ๋งŽ์ด ์‚ฌ์šฉ๋˜๋Š” ๊ด€๊ณ„ํ˜• ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค ์‹œ์Šคํ…œ(RDBMS)์ด์ง€๋งŒ ์„œ๋กœ ์šฉ๋„์™€ ํŠน์ง•์ด ๋‹ค๋ฅด๋‹ค. SQLiteํŒŒ์ผ ๊ธฐ๋ฐ˜ : SQLite๋Š” ์„œ๋ฒ„๊ฐ€ ์•„๋‹Œ ํŒŒ์ผ ๊ธฐ๋ฐ˜์˜ ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค์ด๋‹ค. ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค๊ฐ€ ํ•˜๋‚˜์˜ ํŒŒ์ผ๋กœ ์ €์žฅ๋˜๋ฉฐ, ์ด ํŒŒ์ผ์„ ์–ดํ”Œ๋ฆฌ์ผ€์ด์…˜์ด ์ง์ ‘ ์—‘์„ธ์Šคํ•œ๋‹ค.์„ค์น˜ ๋ฐ ์„ค์ • ๊ฐ„ํŽธ : ๋ณ„๋„์˜ ์„ค์น˜ ๊ณผ์ •์ด๋‚˜ ์„œ๋ฒ„ ์„ค์ •์ด ํ•„์š” ์—†๊ณ , ๋ผ์ด๋ธŒ๋Ÿฌ๋ฆฌ ํ˜•ํƒœ๋กœ ํ”„๋กœ์ ํŠธ์— ํฌํ•จ์‹œ์ผœ ๋ฐ”๋กœ ์‚ฌ์šฉ๊ฐ€๋Šฅํ•˜๋‹ค.๊ฒฝ๋Ÿ‰ : ํฌ๊ธฐ๊ฐ€ ์ž‘๊ณ , ์†Œ๊ทœ๋ชจ ํ”„๋กœ์ ํŠธ๋‚˜ ๋‹จ์ผ ์‚ฌ์šฉ์ž ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜์— ์ ํ•ฉํ•˜๋‹ค.์ œ๋กœ ๊ตฌ์„ฑ : ์„œ๋ฒ„๊ฐ€ ํ•„์š” ์—†๊ณ , ํŠธ๋žœ์žญ์…˜, ๋ฐ์ด.. 2024. 8. 9.
๋ฐ์ดํ„ฐ SELECT์‹œ NULL์ด ๋‹ด๊ฒผ๋˜ ์ด์œ  ๋ฐ์ดํ„ฐ๋ฅผ select ํ•ด์˜ค๋ฉฐ ๋ถ€๋ถ„ ๋ฐ์ดํ„ฐ๋งŒ null์ด ๋‹ด๊ฒผ๋‹ค.์ž์„ธํžˆ ๋ณด๋‹ˆ ๋ฐ์ดํ„ฐ๊ฐ€ ์ž˜ ๋‹ด๊ธด ๋ถ€๋ถ„์€ DTO์™€ DB ๋ชจ๋‘ undersocre, camel case ๋ฅผ ์ด์šฉํ•˜์ง€ ์•Š๋Š” ๊ฒฝ์šฐ์˜€๊ณ ,null์ด ๋‹ด๊ธด ๋ถ€๋ถ„์€ DTO๋Š” camel case๋ฅผ ์ด์šฉ DB๋Š” underscore๋ฅผ ์ด์šฉํ•˜๋Š” ์ผ€์ด์Šค์˜€๋‹ค.๋”ฐ๋ผ์„œ ์•„๋ž˜์™€ ๊ฐ™์ด application.yml์— mybatis ์„ค์ •์„ ํ•ด์ฃผ์—ˆ๋‹ค.ํ•ด๋‹น ์„ค์ •์€ under score๋กœ ๋˜์–ด์žˆ๋Š” DB ๋ฐ์ดํ„ฐ๋ฅผ camel case๋กœ ๋ฐ”๊พธ์–ด DTO์— ์ €์žฅํ•˜๊ฒŒ ํ•˜๋Š” ์„ค์ •์ด๋‹ค.mybatis:configuration:map-underscore-to-camel-case: true ํ•˜์ง€๋งŒ ์ด๋Ÿฐ ์„ค์ •์—๋„ ๊ฐ€๋” ๋จนํžˆ์ง€ ์•Š๋Š” ๊ฒฝ์šฐ๊ฐ€ ์žˆ๋‹ค. ์ด ์„ค์ •์ด ์ž˜ ๋จนํžˆ์ง€ ์•Š์•„์„œ ์•„๋ž˜์™€ ๊ฐ™์ด ์ง์ ‘์ ์œผ๋กœ alias .. 2024. 5. 22.
ํ”„๋กœ์„ธ์Šค ์Šค์ผ€์ฅด๋ง ํ”„๋กœ์„ธ์Šค๋ž€ ์ปดํ“จํ„ฐ์—์„œ ์—ฐ์†์ ์œผ๋กœ ์‹คํ–‰๋˜๊ณ  ์žˆ๋Š” ์ปดํ“จํ„ฐ ํ”„๋กœ๊ทธ๋žจ์„ ๋งํ•œ๋‹ค. ์ด๋Ÿฌํ•œ ํ”„๋กœ์„ธ์Šค๋ฅผ ์Šค์ผ€์ฅด๋งํ•˜์—ฌ ๊ด€๋ฆฌํ•˜๋Š” ์•Œ๊ณ ๋ฆฌ์ฆ˜๋“ค์„ ์•Œ์•„๋ณด์ž. 1. ๋ฐฐ์น˜ ์ฒ˜๋ฆฌ ์‹œ์Šคํ…œ ๊ทน ์ดˆ๋ฐ˜์— ๋‚˜์˜จ ํ”„๋กœ์„ธ์Šค ์Šค์ผ€์ฅด๋ง ๊ธฐ๋ฒ•์œผ๋กœ ์—ฌ๋Ÿฌ ํ”„๋กœ๊ทธ๋žจ์„ ์ˆœ์ฐจ์ ์œผ๋กœ ์‹คํ–‰์‹œํ‚ฌ ์ˆ˜ ์žˆ๋„๋ก ํ•˜๋ฉฐ ๋™์‹œ ์‹คํ–‰์ด ์–ด๋ ต๊ณ , ๋‹ค์ค‘ ์‚ฌ์šฉ์ž ์ง€์›์ด ๋ถˆ๊ฐ€๋Šฅํ•˜๋‹ค. ๊ตฌํ˜„ ๋ฐฉ๋ฒ•์€ FIFO์„ ์ง€์›ํ•˜๋Š” ์ž๋ฃŒ๊ตฌ์กฐ์ธ Queue๋ฅผ ์“ฐ๋ฉด ๊ฐ€๋Šฅํ•˜๋‹ค. ๋ฐฐ์น˜ ์ฒ˜๋ฆฌ ์‹œ์Šคํ…œ์˜ ์„ฑ๋Šฅ์ด ๋–จ์–ด์ง€๊ณ  ๋™์‹œ ์‹คํ–‰, ๋‹ค์ค‘ ์‚ฌ์šฉ์ž ์ง€์›์„ ์œ„ํ•ด ๋‚˜์˜จ ์‹œ์Šคํ…œ์ด ์‹œ๋ถ„ํ•  ์‹œ์Šคํ…œ๊ณผ ๋ฉ€ํ‹ฐํƒœ์Šคํ‚น์ด๋‹ค. 2. ์‹œ๋ถ„ํ•  ์‹œ์Šคํ…œ ๋‹ค์ค‘ ์‚ฌ์šฉ์ž ์ง€์›์„ ์œ„ํ•ด ์ปดํ“จํ„ฐ ์‘๋‹ต ์‹œ๊ฐ„์„ ์ตœ์†Œํ™”ํ•˜๋Š” ์‹œ์Šคํ…œ์œผ๋กœ ์‘๋‹ต ์‹œ๊ฐ„์ด ๋น ๋ฅด๋‹ค. Unix์—์„œ ์‹œ๋ถ„ํ•  ์‹œ์Šคํ…œ์„ ๊ตฌํ˜„ํ•˜์—ฌ ์‚ฌ์šฉํ•˜๊ธฐ ์‹œ์ž‘ํ–ˆ์œผ๋ฉฐ Unix ๊ธฐ๋ฐ˜์˜ ๋ฌด๋ฃŒ ์„œ๋น„์Šค์ธ Linux์—์„œ๋„ ์‚ฌ.. 2023. 5. 18.
ORM ๊ณผ SQL Mapper ์˜ค๋Š˜์€ DB์™€ ์—ฐ๋™๋˜๋Š” ์‹œ์Šคํ…œ์„ ๋น ๋ฅด๊ฒŒ ๊ฐœ๋ฐœํ•˜๊ณ , ์•ˆ์ •์ ์ธ ๊ตฌ๋™์„ ๋ณด์žฅํ•ด์ฃผ๋Š” ํ”„๋ ˆ์ž„ ์›Œํฌ์ธ Persistence Framework ์˜ ์ข…๋ฅ˜์ธ ORM๊ณผ SQL Mapper์— ๋Œ€ํ•ด ์•Œ์•„๋ณด๊ณ ์ž ํ•œ๋‹ค. ์šฐ์„  persistence Framework์˜ ์žฅ์ ์€ ๋ฌด์—‡์ผ๊นŒ? persistence Framework๋Š” ์žฌ์‚ฌ์šฉ ๋ฐ ์œ ์ง€๋ณด์ˆ˜์— ์šฉ์ดํ•˜๋‹ค. ๋˜ํ•œ ์ง๊ด€์ ์ธ ์ฝ”๋“œ๋ฅผ ๋„์™€์ค€๋‹ค. ํ•ด๋‹น ํ”„๋ ˆ์ž„์›Œํฌ๊ฐ€ ์กด์žฌํ•˜์ง€ ์•Š๋Š”๋‹ค๋ฉด db์™€ ์—ฐ๊ฒฐ๋˜์—ˆ๋Š”์ง€, query๊ฐ€ ์ด์ƒํ•œ์ง€, db๊ฐ€ ๊ณ„์† ์—ฐ๊ฒฐ ๋˜์–ด ์žˆ๋Š”์ง€, db์—ฐ๊ฒฐ์ด ๊ฐ‘์ž๊ธฐ ๋Šํ‚จ๊ฒฝ์šฐ, db ์‚ฌ์šฉ ํ›„ ์—ฐ๊ฒฐ ์ข…๋ฃŒ ๋“ฑ์˜ ์ผ๋“ค์„ ์ง์ ‘ ์ฝ”๋“œ๋กœ ์ž‘์„ฑํ•˜์—ฌ ๊ด€๋ฆฌํ•ด์•ผ ํ•œ๋‹ค. SQL Mapper - sql์„ ๊ฐœ๋ฐœ์ž๊ฐ€ ์ง์ ‘ ์ž‘์„ฑ - ์ฟผ๋ฆฌ๋ฅผ ๊ฐ€์ง€๊ณ  ์ง์ ‘ DB์™€ ์—ฐ๊ฒฐ - mapping ๋ฐฉ์‹ : ์ฟผ๋ฆฌ ์ˆ˜ํ–‰ ๊ฒฐ๊ณผ .. 2023. 4. 21.