Exploring Different Values of `spring.jpa.hibernate.ddl-auto` in Spring Boot Spring Boot νλ‘μ νΈμμ `spring.jpa.hibernate.ddl-auto` μμ±μ λ°μ΄ν°λ² μ΄μ€ μ€ν€λ§ μμ± λ° κ΄λ¦¬μ μ€μν μν μ ν©λλ€. μ΄ κΈμμλ `spring.jpa.hibernate.ddl-auto` μμ±μ λ€μν κ°μ μ΄ν΄λ³΄κ³ , κ° κ°μ΄ μ΄λ€ μν μ νλμ§ μ€λͺ νκ² μ΅λλ€.
1. μκ°
`spring.jpa.hibernate.ddl-auto` μμ±μ Hibernateλ₯Ό ν΅ν΄ JPA μν°ν°μ λ°μ΄ν°λ² μ΄μ€ μ€ν€λ§λ₯Ό λκΈ°νν λ μ¬μ©λ©λλ€. μ΄ μμ±μ λ°μ΄ν°λ² μ΄μ€ μ€ν€λ§λ₯Ό μμ±, μ λ°μ΄νΈ, μμ , κ²μ¦νλ λ±μ μμ μ μλμΌλ‘ μννλλ° μ¬μ©λ©λλ€.
2. λ€μν μμ± κ°
2.1. `create`
- μ€λͺ : μ ν리μΌμ΄μ μ΄ μμλ λλ§λ€ λ°μ΄ν°λ² μ΄μ€λ₯Ό μμ νκ³ λ€μ μμ±ν©λλ€. λ°μ΄ν°λ² μ΄μ€μ λͺ¨λ λ°μ΄ν°κ° μ¬λΌμ§λ―λ‘ μ£Όμν΄μΌ ν©λλ€.
2.2. `update`
- μ€λͺ : μν°ν° ν΄λμ€μ λ³κ²½ λ΄μ©μ νμΈνκ³ λ°μ΄ν°λ² μ΄μ€ μ€ν€λ§λ₯Ό μ λ°μ΄νΈν©λλ€. κΈ°μ‘΄ ν μ΄λΈμ΄λ 컬λΌμ΄ μμ λμ§ μμ΅λλ€.
2.3. `validate`
- μ€λͺ : μν°ν° ν΄λμ€μ λ°μ΄ν°λ² μ΄μ€ μ€ν€λ§μ μΌμΉ μ¬λΆλ₯Ό νμΈν©λλ€. μΌμΉνμ§ μμ κ²½μ° μ€λ₯κ° λ°μν©λλ€.
2.4. `create-drop` -
- μ€λͺ : μ ν리μΌμ΄μ μ΄ μμλ λ λ°μ΄ν°λ² μ΄μ€λ₯Ό μμ±νκ³ , μ’ λ£λ λ λ€μ μμ ν©λλ€. κ°λ° λ° ν μ€νΈ νκ²½μμ μ£Όλ‘ μ¬μ©λ©λλ€.
2.5. `none`
- μμ± κ°: `none`
- μ€λͺ : Hibernateκ° λ°μ΄ν°λ² μ΄μ€ μ€ν€λ§λ₯Ό μλμΌλ‘ μμ±νμ§ μμ΅λλ€. κ°λ°μκ° μ§μ μ€ν€λ§λ₯Ό κ΄λ¦¬ν΄μΌ ν©λλ€.
3. μ μ© λ°©λ²
`spring.jpa.hibernate.ddl-auto` μμ±μ `application.properties` λλ `application.yml` νμΌμ μ€μ ν μ μμ΅λλ€. μλ₯Ό λ€μ΄:
spring.jpa.hibernate.ddl-auto=update
spring:
jpa:
hibernate:
ddl-auto: update
4. μ¬μ© μ μ£Όμμ¬ν
- νλ‘λμ νκ²½μμλ μ λλ‘ `create`λ `create-drop` κ°μ μ¬μ©νμ§ λ§μΈμ. λ°μ΄ν° μμ€μ΄ λ°μν μ μμ΅λλ€.
- `update`λ `validate` κ°μ μ¬μ©ν λμλ λ°μ΄ν°λ² μ΄μ€ λ³κ²½μ λν μΆ©λΆν μ£Όμκ° νμν©λλ€.
5. κ²°λ‘
`spring.jpa.hibernate.ddl-auto` μμ±μ Spring Boot νλ‘μ νΈμμ λ°μ΄ν°λ² μ΄μ€ μ€ν€λ§λ₯Ό μλμΌλ‘ μμ± λ° κ΄λ¦¬νλ λ° μ€μν μν μ ν©λλ€. μ΄ κΈμμλ λ€μν μμ± κ°μ λν μ€λͺ κ³Ό μ£Όμμ¬νμ μ΄ν΄λ³΄μμ΅λλ€. κ°λ° λ¨κ³μ μ΄μ λ¨κ³μμ μ μ ν κ°μ μ ννμ¬ λ°μ΄ν°λ² μ΄μ€ μ€ν€λ§λ₯Ό κ΄λ¦¬νμκΈΈ κΆμ₯ν©λλ€.