dev
Web Service - Basic
What is Web Service
“A Web service is a method of communication between two electronic devices over a network.”
总结来说,就是公司内的部门A和部门B,或者公司X和公司Y,为了某一些数据互通,开发的一个数据通信模块。
What is RESTful?
Representational State Transfer (表现层状态转化)
an architecture design that define a stateless client where web services are treated like resources and can be accessed and identified by URL
RESTful架构,是目前流行的一种互联网软件架构
- 每一个URI代表一种资源
- 客户端和服务器之间(Client-Server架构),传递这种资源的某种表现层
- 客户端通过四个HTTP动词,对服务器端资源进行操作,实现”表现层状态转化”
组合起来就是,基于Client-Server架构,使用HTTP动词,对资源进行操作/传递。
http://www.ruanyifeng.com/blog/2011/09/restful.html
RESTful vs SOAP?
SOAP是比较早期的Web Service解决方案,后来慢慢就淘汰了,主要原因是”重”,开发起来复杂,学习成本高。
这个”重”主要体现在几个方面:
- SOAP有自己的一套XML格式的SOAP message,需要额外parse;而RESTful就是直接JSON/XML/CSV,使用起来方便很多。
- SOAP需要定义一套接口WSDL暴露给外部;而RESTful直接使用HTTP verbs(GET, PUT, POST, DELETE),进而提出 Resource-based 这个概念,更容易开发。
- SOAP需要定义一套资源中心UDDI暴露给外部,用来查询WSDL;而RESTful没有这些,它的请求可以通过文档直接暴露给外部。
Servlet
What is a Servlet?
Servlet 是处理 http request 的 Java 程序
What is the Difference Between JSP and Servlet?
JSP 侧重于视图,servlet 主要用于控制逻辑。