1、Web服务与RESTful技术(RESTful引论)主讲:聂鹏主讲:聂鹏课堂要求理论课堂平时成绩理论课堂作业成绩实验课堂实验成绩综合实验成绩有条件的同学带上笔记本!RESTful是什么?Representational State Transfer表述性状态转移全称(1)是一种具体的语言么?它是一种软件架构风格,设计风格。(2)是一种标准么?基于、XML、JSON(3)是一种协议么?基于HTTP、HTTPS、URL等三个NO!WebService的一种具体实现思想WebServiceWebService是什么?你好WebService是什么?Hello你好WebService(RESTful)
2、WANG WU WANG WANGWeb service是一个平台独立的,低耦合的,自包含的、基于可编程的web的应用程序,可使用开放的XML(标准通用标记语言下的一个子集)标准来描述、发布、发现、协调和配置这些应用程序,用于开发分布式的互操作的应用程序。WebService一般性服务框架RESTful与常见WebService实现对比RPCBig Web ServicesMVCJAX-RS(Java API for RESTful Web Service)JAX-RS是什么?是什么?是Java提供用于开发RESTful Web服务基于注解(annotation)的APIJAX-RS API概
3、况概况JAX-RS包含近五十多个接口,注解和抽象类:javax.ws.rs:包含用于创建RESTful服务资源的高层次(High-level)接口和注解;javax.ws.rs.core:包含用于创建RESTful服务资源的低层次(Low-level)接口和注解;javax.ws.rs.ext:包含用于扩展JAX-RS API支持类型的APIs;注意:JAX-RS规范只是定义API,真正开发RESTful Web服务需要引入具体实现,具体实现由第三方提供,如Sun的参考实现Jersey,Apache CXF,Jboss RESTEasy。JAX-RS(Java API for RESTful
4、Web Service)JAX-RS API的目标的目标基于POJO:提供一组注解,类,接口用于将POJOs暴露为网络资源(Web Resource),并定义对象的生命周期和有效范围;以HTTP为中心:该规范将默认HTTP作为底层网络协议并提供一个清晰的HTTP和URI元素到API类和注解之间的映射;格式无关性:能处理多种不同内容格式的HTTP实体,并提供统一的扩展机制允许应用新增支持其他内容格式(通过实体Provider);容器无关性:使用该API的应用能被部署到多个Web容器,该规范将定义如何将应用部署在Servlet容器和作为一个JAX-WS提供者;融入Java EE:该规范将定义在Ja
5、va EE容器中网络资源(Web Resource)类的环境并将指导如何使用Java EE提供的功能和组件;POJO:Plain Ordinary Java ObjectJAVA EE:Java Platform,Enterprise Edition(J2EE)Servlet:Server AppletJDK(Java Development Kit)JDK是什么?是什么?JDK是 Java 语言的软件开发工具包,是整个java开发的核心,它包含了JAVA的运行环境,JAVA工具和JAVA基础的类库。JDK 8Eclipse Jee NeonEclipse是什么?是什么?Eclipse 是一个
6、开放源代码的、基于 Java 的可扩展开发平台。就其本身而言,它只是一个框架和一组服务,用于通过插件组件构建开发环境。Eclipse 附带了一个标准的插件集,包括 Java 开发工具(Java Development Tools,JDT)。Eclipse Jee Neonhttps:/www.eclipse.org/TomcatTomcat是什么?是什么?Tomcat 服务器是一个开放源代码的Web 应用服务器,技术先进、性能稳定,而且免费,因而深受Java 爱好者的喜爱并得到了部分软件开发商的认可,成为目前比较流行的Web 应用服务器。Apache-tomcat-9.0.0.M9http:/tomcat.apache.org/JBoss RESTEasyJBoss是什么?是什么?一个基于J2EE的开放源代码的应用服务器,可以在任何商业应用中免费使用,一般与Tomcat或Jetty绑定使用。JBoss RESTEasy 3.0.18http:/resteasy.jboss.org/分析与测试工具下载下载Firefox安装安装Firefox插件插件下载下载WireShark