发表于: 2017-07-16 21:34:16

1 3507


今天完成的事:接口与rest接口概念学习 springmvc理解

1.rest接口格式
了解rest接口,首先了解什么是接口:
1)计算机编程中应用程序编程接口API)是一组用于构建应用软件子程序定义,协议和工具。一般来说,它是一组明确定义的各种软件组件之间的通信方法
2)正如图形用户界面使人们更容易使用程序,应用程序编程接口使开发人员更轻松地使用某些技术来构建应用程序。通过抽象底层实现,并仅仅暴露开发人员需要的对象或动作,API简化了编程。虽然电子邮件客户端的图形界面可能为用户提供执行获取和突出显示新电子邮件的所有步骤的按钮,用于文件输入/输出的API 可能会给开发人员一个将文件从一个位置复制到另一个位置的功能,而不需要开发人员了解幕后发生的文件系统操作。(这个意思就是说这个也是一种框架咯?)
2)正如图形用户界面使人们更容易使用程序,应用程序编程接口使开发人员更轻松地使用某些技术来构建应用程序。通过抽象底层实现,并仅仅暴露开发人员需要的对象或动作,API简化了编程。虽然电子邮件客户端的图形界面可能为用户提供执行获取和突出显示新电子邮件的所有步骤的按钮,用于文件输入/输出的API 可能会给开发人员一个将文件从一个位置复制到另一个位置的功能,而不需要开发人员了解幕后发生的文件系统操作。
3)个人觉得api就和java的框架一样是工具,用于更好搭建自己的程序,但是api的范围更广一点,而且接口能实现的功能更多更稳定。和框架一样,建造房子只需要弄到工具,无需自己在去制造工具。
1)什么是rest接口
表征状态转移REST)或RESTful Web服务是在因特网上的计算机系统之间提供互操作性的一种方式。符合REST的Web服务允许请求系统使用统一和预定义的一组无状态操作来访问和操纵Web资源的文本表示。存在其他形式的Web服务,它们暴露了自己的任意操作集,如WSDLSOAP[1]
“Web资源”首先在万维网上定义为通过其URL标识的文档或文件,但如今,它们具有更加通用和抽象的定义,涵盖可以识别,命名,寻址或处理的任何东西或实体无论如何,在网上。在RESTful Web服务中,向资源URI发出的请求将引发可能是XMLHTMLJSON或其他定义格式的响应。响应可以确认已经对所存储的资源进行了一些改变,并且它可以提供与其他相关资源或资源集合的超文本链接。使用HTTP,最常见的是,
通过利用无状态协议和标准操作,REST系统旨在通过重新使用可以管理和更新的组件来快速实现性能,可靠性和增长能力,而不影响整个系统,即使它正在运行。
术语表述性状态转移被引入,并在2000年定义罗伊菲尔丁在他的博士论文。[2] [3] Fielding使用REST来设计HTTP 1.1和统一资源标识符(URI)。[4] [5] [6]该术语旨在唤起设计良好的Web应用程序的行为形象:它是Web资源(虚拟状态机)的网络,用户通过选择进行应用程序链接,例如/user/tomGET或DELETE(状态转换)等操作,导致下一个资源(表示应用程序的下一个状态)被传送给用户供他们使用。
有6个约束
客户端-服务器
无状态
可缓存
系统分层
代码需求(可选)
界面统一
统一接口约束是任何rest接口设计基础。简化解耦结构。
每个部分能独立。
四个约束分辨四:
资源鉴定
在请求中标识个别资源,例如在基于Web的REST系统中使用URI。资源本身在概念上与返回给客户端的表示形式分开。例如,服务器可以将数据从数据库发送为HTMLXMLJSON,这些都不是服务器的内部表示。
经过交涉资源的操作
当客户端持有包含所有元数据的资源的表示时,它具有足够的信息来修改或删除资源。
自描述的消息
每个消息都包含足够的信息来描述如何处理消息。例如,调用哪个解析器可以由Internet媒体类型(以前称为MIME类型)指定。
超媒体作为应用状态的引擎(HATEOAS
访问REST应用程序的初始URI - 类似于访问网站主页的人类Web用户,REST客户端应该能够动态地使用服务器提供的链接来发现所需的所有可用操作和资源。随着访问的进行,服务器以文本的形式进行响应,其中包含超链接到当前可用的其他操作。客户端无需使用有关REST服务的结构或动态的信息进行硬编码。
细粒度概念:
并行计算中,粒度是指与通信有关的计算量,即计算与通信量的比值。[2]
细粒度的并行性意味着个人任务在代码大小和执行时间方面都比较小。数据经常以一个或几个记忆字的量传送到处理器之间。粗粒度是相反的:在较大量的计算之后,不经常传送数据。
粒度越细,并行性和加速的可能性越大,同步和通信的开销就越大。[3]
为了获得最佳的并行性能,需要找到负载和通信开销之间的最佳平衡。如果粒度太小,性能可能会受到增加的通信开销的影响。另一方面,如果粒度太粗,性能会受到负载不平衡的影响。



springmvc 是一个框架,是spring其中的一个模块。但是不知道mvc是什么意思,百度一下。

mvc是一个设计模式。在b/s系统自下的应用。百度了一下mvc原理。

用户给一个请求,控制器接收这个请求,去一个模型(pojo类)告诉他处理并返回给控制器。控制器接收到了这些处理过的模型结果后,在把数据弄到request域填充做渲染。  渲染过后成为了一个视图,最后控制器在把这个视图结果反应给用户。


springmvc 看起来就比这个mvc模糊的多的多了。完全就看不太懂。


明天的计划:尝试初步编写rest接口。继续学习springmvc的概念。


遇到的问题: 为什么和mvc的概念差这么多呢。springmvc是一个前段框架。在想为什么这个springmvc的控制

器不能像mvc的控制器一样 可以那么简单的执行几个功能。



收获: 浅显的认识到了什么rest ,什么是api。知道了什么是mvc。


返回列表 返回列表
评论

    分享到