[英]Spring CrudRepository not working save & delete operation
在春季,CrudRepository findAll()操作可以很好地從數據庫中獲取數據,但是在保存,更新和刪除的情況下使用相同的配置無法正常工作。
EmployeeService.java
@Service
public class EmployeeService {
@Autowired
private EmployeeRepo employeeRepoI;
@Transactional
public List<Employee> getAllEmployee() {
return (List<Employee>) employeeRepoI.findAll();
}
@Transactional
public Employee getEmployee(int id) {
return (Employee) employeeRepoI.findOne(id);
}
@Transactional
public Employee addEmployee(Employee employee) {
return (Employee) employeeRepoI.save(employee);
}
@Transactional
public Employee updateEmployee(Employee employee) {
return (Employee) employeeRepoI.save(employee);
}
@Transactional
public void deleteEmployee(int id) {
employeeRepoI.delete(id);
}
}
EmployeeRapo.java
@Repository
public interface EmployeeRepo<T, ID extends Serializable> extends CrudRepository<Employee, Long> {
List<Employee> findAll();
}
您具有長類型的CrudRepository和原始int的deleteEmployee。 此值應匹配。
正如@Sergey指出的那樣,您的EmployeeRepo
那里的定義有誤
嘗試這個
@Repository
public interface EmployeeRepo extends CrudRepository<Employee, Long> {
List<Employee> findAll();
}
同樣,您的deleteEmployee()
方法采用int
而應采用Long
作為參數。
@Transactional
public void deleteEmployee(Long id) {
employeeRepoI.delete(id);
}
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.