๋ณธ๋ฌธ ๋ฐ”๋กœ๊ฐ€๊ธฐ
๐Ÿ–ฅ๏ธ Cheer-haํ”„๋กœ์ ํŠธ/โœ๏ธ TIL

[ TIL ] ์ตœ์ข… ํ”„๋กœ์ ํŠธ_Day 2

by carrot0911 2025. 2. 11.

์˜ค๋Š˜ ์ง„ํ–‰ํ•œ ๋‚ด์šฉ๋“ค ๐Ÿง 

ํŒ€ ์ปจ๋ฒค์…˜ ์ •ํ•˜๊ธฐ

  • ํŒ€์˜ ์ฝ”๋“œ ์ปจ๋ฒค์…˜์„ ์„ธ์„ธํ•˜๊ฒŒ ์ •ํ–ˆ๋‹ค.
    • ์ค‘๊ฐ„์— ์˜๊ฒฌ ์ถฉ๋Œ์ด ์ผ์–ด๋‚˜๋Š” ์ผ์ด ๋ฐœ์ƒํ•˜์ง€ ์•Š๋„๋ก ํ•„์š”ํ•œ ๋‚ด์šฉ๋“ค์„ ๋ชจ๋‘ ์ •ํ–ˆ๋‹ค.

ํŽ˜์ด์ง€ ์กฐํšŒ ๊ธฐ๋Šฅ(๊ฒ€์ƒ‰ ํฌํ•จ) ๊ฐœ๋ฐœ ์‹œ์ž‘

  • ์‚ฌ์‹ค ์‹œ์ž‘์€ ์ตœ๊ทผ ๊ฒ€์ƒ‰ ๊ธฐ๋ก ์กฐํšŒ์˜€๋‹ค. ํ•˜์ง€๋งŒ ํŽ˜์ด์ง€ ์กฐํšŒ ๊ธฐ๋Šฅ์„ ํ†ตํ•ด ๊ฒ€์ƒ‰์–ด๋“ค์„ History์— ์ €์žฅํ•ด์•ผ ์ตœ๊ทผ ๊ธฐ๋ก ์กฐํšŒ๊ฐ€ ๊ฐ€๋Šฅํ•œ ๊ฒƒ์ด์—ˆ๋‹ค.
  • ๊ทธ๋ž˜์„œ History์— ๋Œ€ํ•œ ๊ฐœ๋ฐœ์„ ๋ฉˆ์ถ”๊ณ  ํŽ˜์ด์ง€ ์กฐํšŒ ๊ธฐ๋Šฅ์„ ๊ตฌํ˜„ํ•˜๊ธฐ ์‹œ์ž‘ํ–ˆ๋‹ค.
  • ํ•„ํ„ฐ๋ง์„ ํ•ด์•ผํ•  ์กฐ๊ฑด๋“ค์ด ๋งค์šฐ ๋งŽ์•„์„œ ํ—ท๊ฐˆ๋ฆฌ์ง€ ์•Š๊ฒŒ ๋จผ์ € ์ •๋ฆฌํ•œ ํ›„ ํ•˜๋‚˜์”ฉ ์ฐจ๋ก€๋Œ€๋กœ ํ•ด๊ฒฐํ–ˆ๋‹ค.
  • ์•„์ง ์ž๊ฒฉ ์š”๊ฑด ๋ถ€๋ถ„์— ๋Œ€ํ•ด์„œ๋Š” ํ•ด๊ฒฐํ•˜์ง€ ๋ชปํ•ด์„œ ์ด์–ด์„œ ๊ฐœ๋ฐœํ•  ์˜ˆ์ •์ด๋‹ค.

ํ”„๋กœ์ ํŠธ ์ง„ํ–‰ํ•˜๋ฉด์„œ ๊ณ ๋ฏผํ–ˆ๋˜ ์‚ฌํ•ญ๋“ค

  • QueryDSL์—์„œ between๊ณผ geo, leo ์ค‘ ์–ด๋–ค ๊ฒƒ์„ ์‚ฌ์šฉํ•˜๋Š” ๊ฒƒ์ด ์ข‹์„๊นŒ?
    • ์ฑ„์šฉ ๊ธฐ๊ฐ„์— ๋”ฐ๋ฅธ ๊ฒ€์ƒ‰ ์กฐํšŒ๋ฅผ ์ง„ํ–‰ํ•  ๋•Œ ํ…Œ์ด๋ธ” ์•ˆ์— ์‹œ์ž‘ ๋‚ ์งœ์™€ ๋งˆ๊ฐ ๋‚ ์งœ๊ฐ€ ์กด์žฌํ•˜๊ธฐ ๋•Œ๋ฌธ์— between๋„ ์‚ฌ์šฉ์ด ๊ฐ€๋Šฅํ•˜๊ณ , geo, leo๋„ ์‚ฌ์šฉ์ด ๊ฐ€๋Šฅํ•˜๋‹ค.
    • ํ•˜์ง€๋งŒ ๊ฒ€์ƒ‰ ๊ธฐ๊ฐ„์— ์‹œ์ž‘ ๋‚ ์งœ ํ˜น์€ ๋งˆ๊ฐ ๋‚ ์งœ๊ฐ€ null์ด ๋“ค์–ด์˜ฌ ๊ฐ€๋Šฅ์„ฑ์ด ์กด์žฌํ•œ๋‹ค.
    • ์ด๋ ‡๊ฒŒ ๋  ๊ฒฝ์šฐ between์„ ์‚ฌ์šฉํ•˜๊ฒŒ ๋˜๋ฉด ์—๋Ÿฌ๊ฐ€ ๋ฐœ์ƒํ•˜๊ธฐ ๋•Œ๋ฌธ์— geo,leo๋ฅผ ์‚ฌ์šฉํ•จ์œผ๋กœ์จ null์„ ์•ˆ์ „ํ•˜๊ฒŒ ์ฒ˜๋ฆฌํ•  ์ˆ˜ ์žˆ๊ฒŒ ๋œ๋‹ค.
  • ๋ฐ์ดํ„ฐ๋ฅผ ์ •๋ ฌํ•˜๋Š” ๋ฐฉ๋ฒ•์„ ์–ด๋–ป๊ฒŒ ๊ฒฐ์ •ํ•ด์•ผ ํ•˜๋Š”๊ฐ€?
    • orderBy() ๋ฅผ ์ง์ ‘ ์‚ฌ์šฉํ•˜๋Š” ๊ฒฝ์šฐ (๋‹จ์ˆœ ์ •๋ ฌ)
      • ๋‹จ์ˆœํ•œ ์ •๋ ฌ์ด๋ผ๋ฉด orderBy(Qํƒ€์ž….ํ•„๋“œ.desc() ๋˜๋Š” asc() ๋ฅผ ๋ฐ”๋กœ ์‚ฌ์šฉ ๊ฐ€๋Šฅํ•˜๋‹ค.
    • OrderSpecifier ๋ฅผ ์‚ฌ์šฉํ•˜๋Š” ๊ฒฝ์šฐ (๋™์  ์ •๋ ฌ ํ•„์š” ์‹œ)
      • ์ •๋ ฌ ์กฐ๊ฑด์ด ๋™์ ์œผ๋กœ ๋ณ€๊ฒฝ๋˜๋Š” ๊ฒฝ์šฐ OrderSpecifier ๊ฐ€ ํ•„์š”ํ•˜๋‹ค.

 

์˜ค๋Š˜ ํ•˜๋ฃจ ์ •๋ฆฌ โœ๏ธ

๋‚ด๊ฐ€ ์ง„ํ–‰ํ•˜๋Š” ์†๋„๊ฐ€ ์ƒ๊ฐ๋ณด๋‹ค ๋งŽ์ด ๋А๋ฆฌ๊ณ , ์•„์ง ์•„๋Š” ๊ฒƒ์ด ๋ณ„๋กœ ์—†๋‹ค๋Š” ๊ฒƒ์„ ๊นจ๋‹ซ๋Š” ์‹œ๊ฐ„์ด์—ˆ๋‹ค.

์ค‘๊ฐ„์ค‘๊ฐ„ ๋ง‰ํžˆ๋Š” ๋ถ€๋ถ„์ด ๋„ˆ๋ฌด๋‚˜๋„ ๋งŽ์•˜๊ณ .... ๊ฒฐ๊ตญ ์˜ค๋Š˜ ํŽ˜์ด์ง€ ์กฐํšŒ ๊ธฐ๋Šฅ ํ•˜๋‚˜๋„ ๊ตฌํ˜„ํ•˜์ง€ ๋ชปํ•œ ์ƒํ™ฉ์ด ๋ฒŒ์–ด์กŒ๋‹ค..
๋ถ„๋ช… ํŽ˜์ด์ง€ ์กฐํšŒ๋‚˜ ์ตœ๊ทผ ๊ฒ€์ƒ‰ ๊ธฐ๋ก ์กฐํšŒ ๋‘˜ ์ค‘ ํ•˜๋‚˜๋Š” ํ•ด๊ฒฐํ•  ์ˆ˜ ์žˆ์„ ๊ฑฐ๋ผ๊ณ  ์ƒ๊ฐํ–ˆ๋Š”๋ฐ......

๊ทธ๋ž˜๋„ ์–ด๋–ป๊ฒŒ๋“  ํ•ด๊ฒฐ ๋ฐฉ๋ฒ•์„ ์ฐพ๊ณ  ํ•ด๊ฒฐ์„ ํ•ด์„œ ๋ชฉ์š”์ผ๊นŒ์ง„ ๋‚ด๊ฐ€ ๋‹ด๋‹นํ•œ ๋ถ€๋ถ„์„ ์™„๋ฒฝํ•˜๊ฒŒ ๋งˆ๋ฌด๋ฆฌํ•  ์ˆ˜ ์žˆ๋„๋ก ๋” ์—ด์‹ฌํžˆ ์ง„ํ–‰ํ•ด์•ผ ํ•  ๊ฒƒ ๊ฐ™๋‹ค. ๊ทธ๋ž˜์•ผ ๋ฏผํ๋ฅผ ๋ผ์น˜์ง€ ์•Š๋Š” 1์ธ๋ถ„์€ ํ•ด๋‚ด๋Š” ํŒ€์›์ด ๋  ์ˆ˜ ์žˆ์„ ๊ฒƒ ๊ฐ™๋‹ค. (์šฐ๋ฆฌํŒ€ ๋‹ค๋“ค ๋„ˆ๋ฌด ์ž˜ํ•˜๋Š” ์‚ฌ๋žŒ๋“ค์ด์•ผ..ใ… ใ… )

๋‚ด์ผ ํ•˜๋ฃจ๋„ ์•Œ์ฐจ๊ฒŒ ์—ด์‹ฌํžˆ ๋ณด๋‚ด๋ณด์ž!! ๋‚ด์ผ์€ ์ œ๋ฐœ ํ’€๋ฆฌํ€˜๋ฅผ ๋ณด๋‚ผ ์ˆ˜ ์žˆ๊ธฐ๋ฅผ......

 

๋‚ด์ผ ๊ณ„ํš โฐ

  • ํŽ˜์ด์ง€ ์กฐํšŒ(๊ฒ€์ƒ‰ ๊ธฐ๋Šฅ ํฌํ•จ) ๊ธฐ๋Šฅ ๊ตฌํ˜„ ์™„๋ฃŒํ•˜๊ธฐ
  • ์ฝ”๋“œ ๋ฆฌ๋ทฐ๋ฅผ ํ†ตํ•ด ํ•„์š”ํ•œ ๋ถ€๋ถ„ ์ˆ˜์ •ํ•˜๊ธฐ
  • ๊ฐ€๋Šฅํ•˜๋‹ค๋ฉด ์ตœ๊ทผ ๊ฒ€์ƒ‰ํ•œ ๊ฒ€์ƒ‰์–ด ๊ธฐ๋ก ์กฐํšŒ๊นŒ์ง€ ํ•  ์ˆ˜ ์žˆ๋„๋ก ๋…ธ๋ ฅํ•˜๊ธฐ