文章目录
- 1. RESTful是什么?
- 2. 传统风格与RESTful风格对比
- 2.1 传统风格
- 2.1 RESTful风格
- 3. RESTful的实现
- 3.1 GET、POST方式
- 3.1.1 创建控制器类
- 3.1.2 创建一个jsp页面
- 3.2 PUT、DELETE方式
- 3.2.1 编写控制器方法
- 3.2.2 配置HiddenHttpMethodFilter
- 3.2.3 编写jsp页面
- 3.3 Http405 解决方法
1. RESTful是什么?
- RESTful 也称为REST(英文:Representational State Transfer)即表现层状态传递,它是一种软件架构风格或设计风格,而不是一个标准。
- REST 是Roy Fielding博士在2000年他的博士论文中提出来的。它是一种针对网络应用的设计和开发方式,可以降低开发的复杂性,提高系统的可伸缩性。
2. 传统风格与RESTful风格对比
2.1 传统风格
如果是原来的架构风格,需要发送四个请求,分别是? 一切看起来都非常美好,但是大家需要注意了,我们在发送请求的时候只能发送post或者get,没有办法发送put和delete请求,那么应该如何处理呢?下面开始进入代码环节: 处理put和delete请求方式注意事项: 在处理put和delete请求方式时,可能会遇到这种情况:控制台能够正常输出,但是浏览器会报405错误 解决办法:
查询用户:http://localhost:8080/springmvc/selectuser" />
3.2 PUT、DELETE方式
3.2.1 编写控制器方法
@RequestMapping(value = "/user",method = RequestMethod.PUT)public String updateUser(String username,String password){ System.out.println("修改用户信息:" + username + ","+ password); return "success";}@RequestMapping(value = "/user",method = RequestMethod.DELETE)public String deleteUser(String username,String password){ System.out.println("删除用户信息:" + username + ","+ password); return "success";}
3.2.2 配置HiddenHttpMethodFilter
<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.2.3 编写jsp页面
<form action="${pageContext.request.contextPath}/user" method="post"> <input name="_method" value="put" type="hidden"/> 用户名:<input type="text" name="username"><br> 密码:<input type="password" name="password"><br> <input type="submit" value="修改"><br></form><form action="${pageContext.request.contextPath}/user" method="post"> <input name="_method" value="delete" type="hidden"/> 用户名:<input type="text" name="username"><br> 密码:<input type="password" name="password"><br> <input type="submit" value="删除"><br></form>
测试结果:
3.3 Http405 解决方法
1.加入 @ResponseBody 注解。
2.请求先转给一个Controller,再返回jsp页面。
注意:注解添加位置在控制器方法处