提供的SpringBoot类型错误的id
我正在创建一个简单的crud项目,spring boot与postman合作。我可以成功列出记录。我添加了记录成功。当我试图通过postman搜索记录时,它无法工作。我得到的错误是postman为class com.example.demo1.Entity.Student提供了错误类型的id。预期:类java.lang.Integer,得到类java.lang.Long邮递员我到目前为止所做的尝试,我在下面附上 学生提供的SpringBoot类型错误的id,spring,spring-boot,postman,Spring,Spring Boot,Postman,我正在创建一个简单的crud项目,spring boot与postman合作。我可以成功列出记录。我添加了记录成功。当我试图通过postman搜索记录时,它无法工作。我得到的错误是postman为class com.example.demo1.Entity.Student提供了错误类型的id。预期:类java.lang.Integer,得到类java.lang.Long邮递员我到目前为止所做的尝试,我在下面附上 学生 @Entity @Table(name="Records"
@Entity
@Table(name="Records")
public class Student
{
@Id
@Column(name="id")
@GeneratedValue(strategy = GenerationType.IDENTITY)
private int id;
@Column(name="fname")
private String fname;
@Column(name="lname")
private String lname;
@Column(name="city")
private String city;
@Column(name="phone")
private String phone;
@Column(name="salary")
private String salary;
public int getId() {
return id;
}
public void setId(int id) {
this.id = id;
}
public String getFname() {
return fname;
}
public void setFname(String fname) {
this.fname = fname;
}
public String getLname() {
return lname;
}
public void setLname(String lname) {
this.lname = lname;
}
public String getCity() {
return city;
}
public void setCity(String city) {
this.city = city;
}
public String getPhone() {
return phone;
}
public void setPhone(String phone) {
this.phone = phone;
}
public String getSalary() {
return salary;
}
public void setSalary(String salary) {
this.salary = salary;
}
存储库
@Repository
public interface Studentrepository extends CrudRepository<Student,Long> {
}
控制器
//creating a get mapping that retrieves the detail of a specific book
@RequestMapping("/student/{id}")
private Student getBooks(@PathVariable(name = "id") int studentid)
{
return services.getStudentById(studentid);
}
您在实体中将id定义为int,但在服务和存储库中使用long,决定要使用的类型,并在所有类中使用相同的类型。在实体和控制器中,您将id定义为integer。在您的服务中,您需要一个长参数。因此会出现不匹配和错误消息。错误消息有时很神秘,但通常会告诉您出了什么问题
//creating a get mapping that retrieves the detail of a specific book
@RequestMapping("/student/{id}")
private Student getBooks(@PathVariable(name = "id") int studentid)
{
return services.getStudentById(studentid);
}