Intellij Idea 调试HTTP响应代码400错误请求

f4t66c6m  于 2023-03-01  发布在  其他
关注(0)|答案(3)|浏览(369)

我是ReSt API的新手,正在处理一个示例项目,其中Java8,Sping Boot 和IDE是Intellij Idea。我正在尝试使用JSON格式的参数作为主体的一部分进行POST请求。这是我的代码:

@PostMapping("/addEmployees")
public void addEmployee(@RequestBody Employee employee) {
    employeeController.addEmployee(dataForImport);
}

员工分类为:

@Entity
@Table(name = "Employee")
public class Employee {

    @Id
    @GeneratedValue(strategy = GenerationType.IDENTITY)
    private Integer id;
    @Column(name = "Name")
    private String name;
    @Column(name = "Dept")
    private String dept;
    @Column(name = "Manager")
    private String manager;
}

上面的代码后面跟有getter和setter。
addEmployees()的实现如下:

public Employee addEmployees(Employee employee) {
    employeeRepo.save(employee);
    return employee;
}

employeeRepo是存储库的一个对象,存储库是:

public interface EmployeeRepo extends JpaRepository<Employee, Integer> {
    @Query("some query")
    List<Employee> getReportees(@Param("manager")int manager);
    
    @Query("some query")
    List<Employee> somMethod(@Param("name")String name);
}

请求的正文为:

{
    "name": "Abcd",
    "dept": "Clinical",
    "manager":"XYZX",
}

但是在执行时它响应为

{
    "timestamp": "2023-02-28T09:12:31.653+00:00",
    "status": 400,
    "error": "Bad Request",
    "message": "",
    "path": "/company/addEmployees"
}

我想知道我丢失了什么或发送了格式不正确的数据,因为它发送了这个响应。有什么方法可以调试这个或获取更多的信息,以便我们可以找出哪里出了问题?

ds97pgxw

ds97pgxw1#

您可以查看应用程序抛出的日志和堆栈跟踪。如果您有IntelliJ,日志输出应位于面板运行

gorkyyrv

gorkyyrv2#

观察Web应用程序抛出的堆栈跟踪和日志

vngu2lb8

vngu2lb83#

原帖代码中有3处拼写错误,请先改正。
应该是:

@PostMapping("/company/addEmployees")
public void addEmployee(@RequestBody Employee employee) {
    employeeController.addEmployees(employee);
}

相关问题