В моем коде SpringBoot Когда я использую запрос Get для пользователя / {id} работает нормально, но при использовании запроса user / modelname.
Я получаю исключение:
Не удалось преобразовать значение типа 'java.lang.String' в требуемый тип 'java.lang.Long';
carController.java
@GetMapping("/user/{id}")
public Car getUser(@PathVariable Long id) {
return carRepository.findOne(id);
}
@GetMapping("/user/modelname")
public List<Car> searchUserByModel(@RequestBody String modelname) {
return carRepository.findByModelname(modelname);
}
carRepository.java
import org.springframework.data.jpa.repository.JpaRepository;
public interface CarRepository extends JpaRepository<Car, Long>{
public List<Car> findByModelname(String modelname);
}
car.java
@Entity
public class Car {
@Id
@GeneratedValue
private Long id;
private String modelname;
public Long getId() {
return id;
}
public void setId(Long id) {
this.id = id;
}
public String getModelname() {
return modelname;
}
public void setModelname(String modelname) {
this.modelname = modelname;
}
public Car(Long id,String modelname) {
this.id=id;
this.modelname = modelname;
}
@Override
public String toString() {
return "Car [id=" + id + ", modelname=" + modelname +"]";
}
public Car() {
}
}