выведенный тип 'S' для параметра типа 'S' находится за его пределами; должен расширять 'java .lang.Integer' - PullRequest
1 голос
/ 25 февраля 2020

Я пытался решить эту проблему более чем за пару часов, но не смог, я в основном пытался выполнить грубую операцию, но когда я использовал метод сохранения для определения местоположения для реализации службы, он показывает ошибку "предполагаемый тип 'S' для типа параметр 'S' находится за его пределами; он должен расширять 'java .lang.Integer' ", так каковы шаги по избавлению от этого массажа

Интерфейс репозитория

package com.crudeoperation.demopro.Repo;

import com.crudeoperation.demopro.Entities.Location;
import org.springframework.data.jpa.repository.JpaRepository;
import org.springframework.data.repository.CrudRepository;
import org.springframework.stereotype.Repository;


@Repository

public interface LocationRepository extends CrudRepository<Integer, Location> {

}

locationServices

 package com.crudeoperation.demopro.Services;

    import com.crudeoperation.demopro.Entities.Location;

    import java.util.List;
    import java.util.Optional;

    public interface LocationServices {
        Location saveLocation(Location location );
        Location UpdateLocation(Location location);
        void deleteLocation(Location location);
        Optional<Integer> getLocationById(int id);
        List<Location> getAllLocation();

    }

LocationServicesImpl

package com.crudeoperation.demopro.Services;

import com.crudeoperation.demopro.Entities.Location;
import com.crudeoperation.demopro.Repo.LocationRepository;
import org.springframework.beans.factory.annotation.Autowired;

import java.util.List;
import java.util.Optional;

public class LocationServicesImpl implements LocationServices {
    @Autowired
    private LocationRepository locationRepository;
    @Override
    public Location saveLocation(Location location) {
        return locationRepository.save(location);
    }

    @Override
    public Location UpdateLocation(Location location) {
        return null;
    }

    @Override
    public void deleteLocation(Location location) {

    }

    @Override
    public Optional<Integer> getLocationById(int id) {
        return Optional.empty();
    }

    @Override
    public List<Location> getAllLocation() {
        return null;
    }
}

Ответы [ 2 ]

1 голос
/ 25 февраля 2020

Я думаю, вам следует изменить порядок параметров типа в CrudRepository.

@Repository
public interface LocationRepository extends CrudRepository<Location, Integer> {

}

Глядя на репозиторий Javado c, он дает нам больше подсказок о Параметры типа:

Параметры типа:
T - тип домена, которым управляет хранилище
ID - тип идентификатора сущности, которой управляет хранилище

0 голосов
/ 02 марта 2020

спасибо всем за эту помощь. На самом деле я забываю внедрить зависимости thymleaf в мой pom. xml Это была глупая ошибка

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