RESTFUL 风格+前后端分离
RESTFUL 风格
增加 /categories POST
删除 /categories/123 DELETE
修改 /categories/123 PUT
获取 /categories/123 GET
查询 /categories GET
所有的超链都要用form提交,将链接给form的action
$(function(){ $(".delete").click(function(){ var href=$(this).attr("href"); $("#formdelete").attr("action",href).submit(); return false; }); });
form都要增加该字段,虽然这个form的method是post, 但是springmvc看到这个_method的值是put后,会把其修改为put.
<input type="hidden" name="_method" value="PUT">
控制器的RequestMapping都改了
@GetMapping("/categories") public String listCategory @PostMapping("/category") public ModelAndView addCategory @DeleteMapping("/category/{id}") public ModelAndView deleteCategory @PutMapping("/category/{id}") public ModelAndView updateCategory @GetMapping("/category/{id}") public ModelAndView editCategory(@PathVariable("id") int id)
前后端分离
控制器的方法加@ResponseBody,引用类的注入用@RequestBody
@PutMapping("/category") @ResponseBody//转换成json(通过@ResponseBody注解快速实现)数据发给前端 public void addCategory(@RequestBody Category category)
html文件的请求都要经过AJAX,将请求给服务器
$("#sender").click(function(){ var id=$("#id").val(); var name=$("#name").val(); var c={"id":id,"name":name}; var jsondata=JSON.stringify(c); var page="category"; $.ajax({ type:"put", url:page, data:jsondata, contentType : "application/json;charset=UTF-8", success: function(result){ } }); alert("提交成功,请在springboot控制台查看服务端接收到的数据"); });