Для соединения с MySQL нужны некоторые зависимости как показано ниже
Зависимости (maven -> pom.xml).
<dependencies>
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-web</artifactId>
</dependency>
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-data-jpa</artifactId>
</dependency>
<dependency>
<groupId>mysql</groupId>
<artifactId>mysql-connector-java</artifactId>
</dependency>
</dependencies>
в application.properties
нужны дополнительные настройки конфигурации, например
application.properties (src / main / resources / application.properties)
# DataSource settings: set here your own configurations for the database
# connection. In this example we have "netgloo_blog" as database name and
# "root" as username and password.
spring.datasource.url = jdbc:mysql://localhost:8889/database_name
spring.datasource.username = mysql-userId
spring.datasource.password = mysql-pwd
# Keep the connection alive if idle for a long time (needed in production)
spring.datasource.testWhileIdle = true
spring.datasource.validationQuery = SELECT 1
# Show or not log for each sql query
spring.jpa.show-sql = true
# Hibernate ddl auto (create, create-drop, update)
spring.jpa.hibernate.ddl-auto = update
# Naming strategy (Not necessary to add but you can use this too)
spring.jpa.hibernate.naming-strategy = org.hibernate.cfg.ImprovedNamingStrategy
# Use spring.jpa.properties.* for Hibernate native properties (the prefix is
# stripped before adding them to the entity manager)
# The SQL dialect makes Hibernate generate better SQL for the chosen database
spring.jpa.properties.hibernate.dialect = org.hibernate.dialect.MySQL5Dialect
Теперь ваш EntityManager
Объект будет создан, когда вы запустите конфигурацию весенней загрузки.
Выше определенной конфигурации достаточно для подключения вашей локальной базы данных my-sql, но вот еще несколько конфигураций, которые вам нужны, чтобы сделать ваш код более читабельным.
Включить JPARepositories, чтобы хранилища CRUD были определены в определенном пакете.
Добавьте @EnableJPARepositories("basepackage.*")
к вашему SpringBootMainApplicationClass
вот так ..
@SpringBootApplication
@EnableJPARepositories("com.demo.application.*.repositories")
@ComponentScan("com.demo.application.*")
public class SpringBootMainApplicationClass {
public static void main(String[] args) {
SpringApplication.run(SpringBootMainApplicationClass.class, args);
}
}
путем добавления @EnableJPARepositories
Аннотация в MainClass
позволяет пользователю сделать ваш код более читабельным, а EntityManager
Объект ограничен только определенным пакетом.