Создание таблицы в Mysql с помощью Java Spring Boot
Я хочу добавить свою созданную сущность в базу Mysql, код срабатывает, но в mysql создается только таблица hibernate_sequence, а моей сущности нет.
application.properties:
server.port=8081
spring.jpa.hibernate.ddl-auto=update
spring.datasource.url=jdbc:mysql://${MYSQL_HOST:localhost}:3306/web_blog
spring.datasource.username=mysql
spring.datasource.password=mysql
Точка входа:
package com.homefood.blog;
import org.springframework.boot.SpringApplication;
import org.springframework.boot.autoconfigure.SpringBootApplication;
@SpringBootApplication
public class BlogApplication {
public static void main(String[] args) {
SpringApplication.run(BlogApplication.class, args);
}
}
Репозиторий:
package com.homefood.blog.repository;
import com.homefood.blog.models.Recipe;
import org.springframework.data.repository.CrudRepository;
public interface RecipeRepository extends CrudRepository<Recipe, Long> {
}
Cущность
package com.homefood.blog.models;
import lombok.Getter;
import lombok.Setter;
import javax.persistence.Entity;
import javax.persistence.GeneratedValue;
import javax.persistence.GenerationType;
import javax.persistence.Id;
@Entity
@Getter
@Setter
public class Recipe {
@Id
@GeneratedValue(strategy= GenerationType.AUTO)
private Long id;
private String title, ingredients, full_text;
private boolean like;
}
Ответы (1 шт):
Автор решения: Roman Danilov
→ Ссылка
Судя по всему вы хотите, чтобы у вас таблицы генерировались сами по вашим @Entity классам. Для этого пропишите в application.properties:
spring.jpa.hibernate.ddl-auto=update
Либо, если вас application.yml:
spring:
jpa:
hibernate:
ddl-auto: update
Возможные значения этого конфигурационного параметра:
- validate - производит валидацию на соответствие структуры вашей БД и ваших сущностей и ругается, если что-то не совпадает.
- update - производит проверку на соответствие структуры вашей БД и ваших сущностей и производит апдейты в БД, если что-то не совпадает. Никогда не удаляет что-то, даже если оно уже не используется.
- create - сначала удаляет ту структуру, что есть, потом пересоздает заново.
- create-drop - то же самое, что и create, за исключением того, что
hibernateудаляет структуру после выполнения всех операций. Удобно при тестировании. - none - ничего не происходит.