发表于: 2017-12-17 22:57:23
1 695
今日完成的事情:
今天上午看了一下小课堂的内容,然后下午是公司的周年庆,下午放松了一下午,和工作的师兄聊了一下,然后看周年庆直播。
小课堂准备讲一下restful风格:
1) rest是什么?
在知乎看到了一句非常经典的解释:
URL定位资源,用HTTP动词(GET,POST,DELETE,DETC)描述操作。
REST 的英文单词时 REpresentational State Transfer,全称是 Resource Representational State Transfer:通俗来讲就是:资源在网络中以某种表现形式进行状态转移。分解开来:
Resource:资源,即数据(前面说过网络的核心)。比如 newsfeed,friends等;
Representational:某种表现形式,比如用JSON,XML,JPEG等;
State Transfer:状态变化。通过HTTP动词实现。
2) 为什么要用rest风格的接口?
最早的时候开发网页是前端后端融在一起的,比如之前的PHP,JSP等。在之前的桌面时代问题不大,但是近年来移动互联网的发展,各种类型的Client层出不穷,RESTful可以通过一套统一的接口为 Web,iOS和Android提供服务。另外对于广大平台来说,比如Facebook platform,微博开放平台,微信公共平台等,它们不需要有显式的前端,只需要一套提供服务的接口,于是RESTful更是它们最好的选择。
3) rest的优点:
RESTFul在于把软件工程师从“操作”的泥淖中抽出来,使其更关注于“资源”,更进一步说是“数据模型”。而关注于“数据模型”后的好处在于,能够帮助不同组件之间更好的解耦,消除依赖关系,以及增大系统拓展性。
说穿了,就一句话,信息化的本质无非数据模型的CURD而已。
4) rest的特点:
1.资源通过URL来指定和操作。
2.对资源的操作包括获取、创建、修改和删除,正好对应HTTP协议GET,POST,PUT和DELETE方法。
3.连接是无状态性的。
5)html表单form中,method没有put、delete,如何实现?
1.在web.xml中配置过滤器:
<filter>
<filter-name>HiddenHttpMethodFilter</filter-name>
<filter-class>org.springframework.web.filter.HiddenHttpMethodFilter</filter-class>
<init-param>
<param-name>methodParam</param-name>
<param-value>_method</param-value>
</init-param>
</filter>
<filter-mapping>
<filter-name>HiddenHttpMethodFilter</filter-name>
<url-pattern>/*</url-pattern>
</filter-mapping>
2.form表单使用隐藏域:
<form action="${ctx}/user/${id}" method="post">
<input type="hidden" name="_method" value="PUT">
3.接口就可以使用put请求方式:
@RequestMapping(value = "/user/{id}", method = RequestMethod.PUT)
public String update(User user, @PathVariable int id) throws InterruptedException, MemcachedException, TimeoutException {
logger.info(user.toString());
logger.info(id);
userService.update(user);
return "redirect:/user/list";
}
明日计划的事情:
明日讲小课堂。
遇到的问题:
无
收获:
今天和一些工作的师兄聊了一下。师兄也告诉我们了一些面试时应该注意的东西。比如我们掌握了服务器搭建环境,这也是我们面试时的优势。其次,支付、缓存都是工作当中应该要掌握的基本技能。
任务开始时间:2017/12/15
预计完成时间:2017/12/28
延期:无
禅道:http://taskNaNteng.com/zentao/project-story-494.html
评论