2015-04-13 3 views
4

Я новичок в Spring Data JPA. Я попытался создать настраиваемый метод для репозитория, но он генерирует исключение. Вот моя текущая реализация:Данные о Spring jpa хранилище не найдено

public interface EmployeeRepository extends 
CrudRepository<Employee, Long>,EmployeeRepositoryCustom { 

} 

@Repository 
public interface EmployeeRepositoryCustom { 

    public void updateEmployee(String field, String value,long id); 
} 

public class EmployeeRepositoryImpl implements EmployeeRepositoryCustom { 

    @PersistenceContext 
    private EntityManager entityManager; 

    @Override 
    public void updateEmployee(String field, String value, long id) { 
     // Implementation goes here 
    } 

} 

И это исключение, которое происходит, когда я запустить приложение (я использую загрузку Spring).

Caused by: org.springframework.data.mapping.PropertyReferenceException: No property updateEmployee found for type Employee! 
     at org.springframework.data.mapping.PropertyPath.<init>(PropertyPath.java:75) 
     at org.springframework.data.mapping.PropertyPath.create(PropertyPath.java:327) 
     at org.springframework.data.mapping.PropertyPath.create(PropertyPath.java:307) 
+0

Из документов: 'Если вы используете конфигурацию пространства имен, инфраструктура репозитория пытается автоматически определить пользовательские реализации, сканируя классы ниже пакета, мы нашли репозиторий в .' является ли реализация в подпакету репо? –

+0

осуществление также в том же пакете – Shri

+0

Это должно работать как есть. Хотите поделиться примером проекта, который показывает ошибку? –

ответ

0

Так как вы пометили spring-boot, я предполагаю, что вы используете пружинные загрузки. Если это так, вы можете попробовать следующий метод.

@Repository 
public interface EmployeeRepositoryCustom { 

@Modifying 
@Query(value = "update Employee query", nativeQuery = true) 
public void updateEmployee(String field, String value,long id); 

} 

Вам не нужно иметь реализацию, и вы можете иметь именованные параметры в запросе выше. Spring-boot справится с отдыхом.

Смежные вопросы