@Entity

  • ์‹ค์ œ DB Table๊ณผ ๋งค์นญ๋  Class

    • Entity Class ๋ผ๊ณ ๋„ ํ•œ๋‹ค

  • ๊ธฐ๋ณธ ๊ฐ’์œผ๋กœ ๋กœ Class์˜ Camel Case ๋„ค์ด๋ฐ์„ Underscore(_) ๋„ค์ด๋ฐ์œผ๋กœ table ์ด๋ฆ„ ๋งค์นญํ•œ๋‹ค

    • ex)

      • SalesManager.java โ†’ sales_mana

  • Entity Class์—์„œ๋Š” Setter method๋ฅผ ๋งŒ๋“ค์ง€ ์•Š๋Š”๋‹ค

    • why?

      • ํ•ด๋‹น Class์˜ ์ธ์Šคํ„ด์Šค ๊ฐ’๋“ค์ด ์–ธ์ œ ์–ด๋””์„œ ๋ณ€ํ•ด์•ผ ํ•˜๋Š”์ง€ ์ฝ”๋“œ์ƒ์œผ๋กœ ๋ช…ํ™•ํžˆ ๊ตฌ๋ถ„ํ•  ์ˆ˜ ์—†๊ธฐ ๋•Œ๋ฌธ

    • ํ•„๋“œ ๊ฐ’ ๋ณ€๊ฒฝ์ด ํ•„์š”ํ•˜๋‹ค๋ฉด, ๋ช…ํ™•ํ•œ ๋ชฉ์ ๊ณผ ์˜๋„๋ฅผ ๋“œ๋Ÿฌ๋‚ด๋Š” method๋ฅผ ์ถ”๊ฐ€ํ•ด์•ผ ํ•œ๋‹ค

      • ex) ์ฃผ๋ฌธ ์ƒํƒœ์ธ status๋ฅผ set ํ•˜๋Š” ํ•จ์ˆ˜ โ†’ setStatus (x), cancelOrder(o)

  • Entity Class๋Š” ๊ธฐ๋ณธ์ ์œผ๋กœ ์ƒ์„ฑ์ž ๋ฅผ ํ†ตํ•ด ๊ฐ’์„ ์ฑ„์šฐ๊ณ  DB์— INSERT ํ•œ๋‹ค

    • ๊ฐ’ ๋ณ€๊ฒฝ์ด ํ•„์š”ํ•œ ๊ฒฝ์šฐ์—๋Š”, ํ•ด๋‹น event์— ๋งž๋Š” public method๋ฅผ ํ˜ธ์ถœํ•˜์—ฌ ๋ณ€๊ฒฝํ•œ๋‹ค

  • ์ƒ์„ฑ์ž ๋Œ€์‹  Builder ๋ฅผ ์ด์šฉํ•˜์—ฌ ์–ด๋Š field์— ์–ด๋Š ๊ฐ’์„ ๋„ฃ์–ด์•ผ ํ•˜๋Š”์ง€ ๋” ๋ช…ํ™•ํ•˜๊ฒŒ ํ•  ์ˆ˜ ์žˆ๋‹ค

    • ex)

      • ์•„๋ž˜ ์ฝ”๋“œ์—์„œ๋Š” Example(a,b)์™€ Example(b, a)์˜ ๊ฒฐ๊ณผ๊ฐ€ ๋‹ค๋ฅผ ๊ฒƒ์ด๋‹ค

        public Example(String a,String b) {
          this.a=a; this.b=b;
        }
      • Builder ๋ฅผ ์‚ฌ์šฉํ•˜๋ฉด ์ˆœ์„œ๊ฐ€ ์ƒ๊ด€์—†๊ฒŒ ๋œ๋‹ค

Last updated