RESTFUL是一种网络应用程序的设计风格和开发方式,基于HTTP,可以使用XML格式定义或JSON格式定义。RESTFUL适用于移动互联网厂商作为业务使能接口的场景,
实现第三方OTT调用移动网络资源的功能,动作类型为新增、变更、删除所调用资源。
首先添加浏览器扩展程序Advanced REST client用于测试
链接: https://pan.baidu.com/s/1LY7V_U5p2d-2jHOz1FcrNQ 提取码: vh7m
然后点击左上角应用使用插件
@Controller @RequestMapping("user") public class UsersController { @RequestMapping(value="{uid}",method=RequestMethod.GET) //查询 public String findById(@PathVariable("uid") int id) { System.out.println("=============findById=============="+id); return "index"; } @RequestMapping(method=RequestMethod.POST) //添加 public String insertUser(User user) { System.out.println(user+"=====insert"); return "index"; } @RequestMapping(value="{uid}",method=RequestMethod.PUT) @ResponseBody public String updateUser(@PathVariable("uid") int id,User user) { System.out.println(id+"===update==="+user); return "index"; } @RequestMapping(value="{id}",method=RequestMethod.DELETE) @ResponseBody public String deleteUser( int id) { //当@RequestMapping的value和参数一样时可以不写@PathVariable System.out.println(id+"======delete"); return "index"; } }
测试:
1. GET提交 查询
2. POST提交 添加
PUT 和DELETE提交要额外加入过滤器,且提交方式还是POST
<filter> <filter-name>HiddenHttpMethodFilter</filter-name> <filter-class>org.springframework.web.filter.HiddenHttpMethodFilter</filter-class> </filter> <filter-mapping> <filter-name>HiddenHttpMethodFilter</filter-name> <url-pattern>/*</url-pattern> </filter-mapping>
3. PUT提交 修改
4. DELETE提交 删除
Springmvc的异常处理
@ExceptionHandler public ModelAndView error(Exception exception) { ModelAndView mv=new ModelAndView(); mv.addObject("error",exception.getMessage()+"1"); mv.setViewName("error"); return mv; }
上面写在类里面为局部处理,只能处理本类的异常。
可以新建一个类作为全局异常类并且在类名前加注解@ControllerAdvice,用于所有类的异常处理。