Java Enum์ด๋?
- Enum์ ํตํด ์ป๋ ๊ธฐ๋ณธ์ ์ธ ์ฅ์
- ๋ฌธ์์ด๊ณผ ๋น๊ตํด, IDE์ ์ง์์ ๋ฐ์ ์ ์๋ค.
- ์๋์์ฑ, ์คํ๊ฒ์ฆ, ํ ์คํธ ๋ฆฌํฉํ ๋ง ๋ฑ
- ๋ฌธ์์ด๊ณผ ๋น๊ตํด, IDE์ ์ง์์ ๋ฐ์ ์ ์๋ค.
- ํ์ฉ ๊ฐ๋ฅํ ๊ฐ๋ค์ ์ ํํ ์ ์๋ค.
- ๋ฆฌํฉํ ๋ง์ ๋ณ๊ฒฝ ๋ฒ์๊ฐ ์ต์ํ ๋๋ค.
- ๋ด์ฉ์ ์ถ๊ฐ๊ฐ ํ์ํด๋, Enum์ฝ๋์ธ์ ์์ ํ ํ์๊ฐ ์๋ค.
Java Enum์ธ ๊ฒฝ์ฐ int๊ฐ์ด ์๋๋ผ ์์ ํ ๊ธฐ๋ฅ์ ๊ฐ์ง ํด๋์ค์ด๋ค!
์ฐ์ enumํ์ ์ผ๋ก ํด๋์ค๋ฅผ ์์ฑํด์ผํ๋ค
์ด์ ์์๋ฅผ ์ ์ธํ๋ฉด ๋๋๋ฐ, ๊ด๋ก์ ์ผ๋ก ๋ชจ๋ ๋๋ฌธ์๋ก ์์ฑํ๋ค.
Entityํด๋์ค์ ์ ์ธํด์ฃผ๊ธฐ ์ํด์ String์ด ์๋ enum์ ์ ์ธํ๋ค.
JPA๋ฅผ ์ฌ์ฉํ๋ฏ๋ก @Enumerated(EnumType.SPRING)์ ์ ์ธํ๋ฉด Enumํ๋๊ฐ ํ ์ด๋ธ์ ์ ์ฅ์ ์ซ์ํ์ด ์๋,
Enum์ ์ด๋ฆ์ด ์ ์ฅ๋๋ค. ์ฌ๊ธฐ์๋ GUEST,USER์ด ์ ์ฅ๋๋ค.
์ด๋ ๊ฒ ๋๋ฉด ๊ฐ๊ณผ ๋ฉ์๋๊ฐ ์ด๋ค ๊ด๊ณ๊ฐ ์๋์ง ์ฐพ์ ํ์๊ฐ ์๋ค.
Enum ์์๋ฅผ ์ง์ ๋ณด๋ฉด ๋๊ธฐ ๋๋ฌธ์ด๋ค.
์ด๋ฐ์์ผ๋ก ์ผ๋ฐ์ฌ์ฉ์(USER)๋ง ๋ณผ ์ ์๊ฒ ๊ถํ์ ์ฃผ๊ธฐ ์ํด ์ฌ์ฉํ ์ ์๋ค.