@Access

Used to specify an access type to be applied to an entity class, mapped superclass, or embeddable class, or to a specific attribute of such a class.

  • ํŠน์ • access type์„ ์„ค์ •ํ•˜๋Š” ๊ฒƒ.

  • ํƒ€์ž…์—๋Š” 2๊ฐ€์ง€ ์žˆ์Œ. (AccessType)

    • FIELD

    • PROPERTY

  • ์™œ ์„ค์ •ํ•˜์ง€?

    • JPA๊ฐ€ ์–ด๋–ป๊ฒŒ ์—”ํ‹ฐํ‹ฐ์˜ properties์— ์ ‘๊ทผํ•˜๋Š” ์ง€ ์•Œ๋ ค์ฃผ๋Š” ๊ฒƒ.

    • FIELD ๋ฐฉ์‹์ด๋ฉด, ํ•ด๋‹น ํ•„๋“œ๋กœ ์ง์ ‘ ์ ‘๊ทผ (getter, setter๋ฅผ ํ†ตํ•˜์ง€ ์•Š์Œ.)

    • PROPERTY ๋ฐฉ์‹์ด๋ฉด, getter, setter์„ ํ†ตํ•ด field์— ์ ‘๊ทผ.

      • ์ฆ‰ ์ ‘๊ทผ ์‹œ์— ๋ญ”๊ฐ€ ์ฒ˜๋ฆฌ ์ฝ”๋“œ๊ฐ€ ํ•„์š”ํ•˜๋ฉด PROPERTY ๋ฐฉ์‹์„ ์‚ฌ์šฉํ•˜์ง€ ์•Š์„๊นŒ ์ƒ๊ฐ๋“ฌ.

  • default?

    • @id ๊ฐ€ field์— ์žˆ์œผ๋ฉด FILED ๋ฐฉ์‹ ์‚ฌ์šฉ.

    • getter ์— ์žˆ์œผ๋ฉด PROPERTY ๋ฐฉ์‹ ์‚ฌ์šฉ.

์ฐธ๊ณ 

Last updated

Was this helpful?