Мой Java Spring Boot Maven REST API не работает - PullRequest
0 голосов
/ 21 октября 2019

Я начинаю с Java J2E и следую этому руководству по разработке REST API с Java, Spring Boot и Maven.

Я не понимаю следующую ошибку, кто-то, пожалуйста, объясните мне? ....: / Мой код: https://github.com/AngierRomain/API-REST-Spring-Java-Maven

Ошибка в файле ERROR.txt

Заранее благодарю за помощь!

1 Ответ

2 голосов
/ 21 октября 2019

Я вижу, вы добавили зависимость в свой pom:

<dependency>
    <groupId>org.springframework.boot</groupId>
    <artifactId>spring-boot-starter-data-jpa</artifactId>
</dependency>

Вы также создали класс Repository. Я предполагаю, что вы хотите использовать Postgres Db для извлечения / хранения подробностей блога.

При запуске этого весеннего приложения появляется эта ошибка

org.hibernate.HibernateException: Access to DialectResolutionInfo cannot be null when 'hibernate.dialect' not set

Это потому, что вы пытаетесь использоватьdata-Jpa (зависимость pom), а также postgres (зависимость присутствует в pom), но вы не указали детали диалекта и соединения в вашем application.properties.

Добавьте это в application.properties

spring.datasource.url=jdbc:postgresql://localhost:5432/blog
spring.datasource.username= root
spring.datasource.password= root
spring.jpa.database-platform=org.hibernate.dialect.PostgreSQLDialect

Теперь, получая эту ошибку от менеджера сущностей:

java.lang.IllegalArgumentException: Not a managed type: class me.romain.Blog

В вашем классе хранилища ваш класс сущностей был определен как Blog.java

public interface BlogRepository extends JpaRepository<Blog, Integer>

Если вы видитеваш Blog класс, это простой класс POJO. Это не DTO. DTO отвечает за взаимодействие с базой данных. Чтобы сделать POJO классом сущности, вы должны указать его.

Вы можете сделать это, используя Entity и Id аннотацию javax.persistence пакета

import javax.persistence.Entity;
import javax.persistence.Id;

@Entity
public class Blog {

    @Id
    private int id;
}

Теперь, когда вы выполнили все это, и все детали подключения источника данных верныЯ думаю, это должно работать для вас.

Примечание. Вы должны попытаться сохранить некоторые примеры данных в БД и извлечь их оттуда, чтобы проверить, действительно ли они работают.


Если вы хотите, чтобы работал только ваш текущий код, удалите репозиторийкласс, удалите зависимость spring-boot-starter-data-jpa от pom. И вы должны быть в состоянии запустить ваше приложение.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...