我知道RESTful服务更多的是创建一个架构。考虑到这个陈述,我用HTTPServlet
扩展了我的普通java类,并使用doGet
& doPost
方法作为我的网络方法,一切似乎都运行正常。我通过发送请求测试了这项服务,它还响应了状态行。现在我感到困惑的是,这真的是一个RESTful Web服务。如果是,那么jsr311
api是什么?是否必须使用jsr311
api / jar创建Rest Web服务??
答案 0 :(得分:4)
JAX-RS是用于使用Java实现RESTful服务的API和规范集。
JAX-RS有多种实现,Jersey是参考实现
JAX-RS的第一个JSR是"JSR 311: JAX-RS: The JavaTM API for RESTful Web Services"。为其生成的工件之一是由Java接口实现的API。此API允许使用Java实现RESTful服务。
当前版本的JAX-RS在"JSR 339: JAX-RS 2.0: The Java API for RESTful Web Services"。
中定义由于REST是架构风格而不是产品或库,因此您可以使用普通Servlet实现RESTful HTTP服务。 JAX-RS背后的想法是,仅使用Servlet工作太多,并且使用Java可以使用标准方法来实现RESTful服务。 JAX-RS定义了这个标准。
如果您使用JAX-RS,那么您的系统将依赖于JAX-RS API库
<dependency>
<groupId>javax.ws.rs</groupId>
<artifactId>javax.ws.rs-api</artifactId>
<version>2.0.1</version>
</dependency>
以及对您使用的JAX-RS实现库的依赖。
答案 1 :(得分:1)
一点也不。
Raw Servlets适用于实现REST架构。各种框架和库只是简化了这项任务。