使用Spring boot开发RestFul 风格项目PUT/DELETE方法不起作用
在使用Spring boot 开发restful 风格的项目,put、delete方法不起作用,解决办法。
实体类Student
@Data public class Student { private String id; private String name; private int age; private String sex; @Override public String toString() { return ToStringBuilder.reflectionToString(this); } }
controller
@RestController public class GreetingController { @RequestMapping(value = "/demo1/student", method = RequestMethod.POST) public void addStudent(Student student) { System.out.println(student); System.out.println("添加成功"); } @RequestMapping(value = "/demo1/student", method = RequestMethod.PUT) public void updateStudent(Student student) { System.out.println(student); System.out.println("更新成功"); } @RequestMapping(value = "/demo1/student", method = RequestMethod.GET) public Student getAtudentById(String id) { System.out.println("接收到的的参数" + id); Stuent s = new Student(); s.setId("12"); s.setName("google"); s.setAge(12); return s; } @RequestMapping(value = "/demo1/student", method = RequestMethod.DELETE) public void delStudent(Student student) { System.out.println(student); System.out.println("删除成功"); } }
使用put 更新接口调用,参数无法传递过去。解决办法是在需要组装的参数前面添加注解 @RequestBody
修改如下:
@RequestMapping(value = "/demo1/student", method = RequestMethod.PUT) public void updateStudent(@RequestBody Student student) { System.out.println(student); System.out.println("更新成功"); }
即可成功调用
delete 接口修改方法相同
学习过程中,难免出错。如果您在阅读过程中遇到不太明白,或者有疑问。欢迎指正...联系邮箱crazyCodeLove@163.com
如果觉得有用,想赞助一下请移步赞助页面:赞助一下