如何在eclipse上配置rest服务啊

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了如何在eclipse上配置rest服务啊相关的知识,希望对你有一定的参考价值。

我要学习rest做后台,在eclipse如何配置啊,最好有实例

在Eclipse里,新建一个web工程

第一步,添加需要用的jar包,如下图  

第二步,新建一个class,代码如下 

第三步,修改web.xml配置文件,如下图 

启动tomcat, 访问本机测试地址:

这时我们就可以访问到我们发布的rest服务了,如下图

参考技术A  通过REST风格体系架构,请求和响应都是基于资源表示的传输来构建的。资源是通过全局ID来标识的,这些ID一般使用的是一个统一资源标识符(URI)。客户端应用使用HTTP方法(如,GET、POST、PUT或DELETE)来操作一个或多个资源。通常,GET是用于获取或列出一个或多个资源,POST用于创建,PUT用于更新或替换,而DELETE则用于删除资源。
  例如,GET http //host/context/employees/12345将获取ID为12345的员工的表示。这个响应表示可以是包含详细的员工信息的XML或ATOM,或者是具有更好UI的JSP/html页面。您看到哪种表示方式取决于服务器端实现和您的客户端请求的MIME类型。
  RESTful Web Service是一个使用HTTP和REST原理实现的Web Service。通常,一个RESTful Web Service将定义基本资源URI、它所支持的表示/响应MIME,以及它所支持的操作。
  本文将介绍如何使用Spring创建Java实现的服务器端RESTful Web Services。这个例子将使用浏览器、curl和Firefox插件RESTClient作为发出请求的客户端。
  本文假定您是熟悉REST基本知识的。
  Spring 3的REST支持
  在Spring框架支持REST之前,人们会使用其他几种实现技术来创建Java RESTful Web Services,如Restlet、RestEasy和Jersey。Jersey是其中最值得注意的,它是JAX-RS(JSR 311)的参考实现。
  Spring是一个得到广泛应用的Java EE框架,它在版本3以后就增加了RESTful Web Services开发的支持。虽然,对REST的支持并不是JAX-RS的一种实现,但是它具有比标准定义更多的特性。REST支持被无缝整合到Spring的MVC层,它可以很容易应用到使用Spring构建的应用中。
  Spring REST支持的主要特性包括:
  注释,如@RequestMapping 和 @PathVariable,支持资源标识和URL映射
  ContentNegotiatingViewResolver支持为不同的MIME/内容类型使用不同的表示方式
  使用相似的编程模型无缝地整合到原始的 MVC 层
  创建一个示例RESTful Web Service
  本节中的例子将演示Spring 3环境的创建过程,并创建一个可以部署到Tomcat中的“Hello World”应用。然后我们再完成一个更复杂的应用来了解Spring 3 REST支持的重要概念,如多种MIME类型表示支持和JAXB支持。另外,本文还使用一些代码片断来帮助理解这些概念。
  Hello World:使用Spring 3 REST支持
  要创建这个例子所使用的开发环境,您需要:
  IDE:Eclipse IDE for JEE (v3.4+)
  Java SE5 以上
  Web 容器:Apache Tomcat 6.0(Jetty或其他容器也可)
  Spring 3框架(v3.0.3是本文编写时的最新版本)
  其他程序库:JAXB 2、JSTL、commons-logging
  在 Eclipse 中创建一个Web应用,然后设置Tomcat 6作为它的运行环境。然后,您需要设置web.xml文件来激活Spring
WebApplicationContext。这个例子将Spring bean配置分成两个文件:rest-servlet.xml 包含与MVC/REST有关的配置,rest-context.xml包含服务级别的配置(如数据源 beans)。清单 1 显示了web.xml中的Spring配置的部分。
  清单 1. 在web.xml中激活Spring WebApplicationContext

以下是引用片段:
<context-param>
<param-name>contextConfigLocation</param-name>
<param-value>
/WEB-INF/rest-context.xml
</param-value>
</context-param>

<!-- This listener will load other application context file in addition to
rest-servlet.xml -->
<listener>
<listener-class>
org.springframework.web.context.ContextLoaderListener
</listener-class>
</listener>

<servlet>
<servlet-name>rest</servlet-name>
<servlet-class>
org.springframework.web.servlet.DispatcherServlet
</servlet-class>
<load-on-startup>1</load-on-startup>
</servlet>
<servlet-mapping>
<servlet-name>rest</servlet-name>
<url-pattern>/service/*</url-pattern>
</servlet-mapping>

  在rest-servlet.xml文件中创建Spring MVC的相关配置(Controller、View、View Resolver)。清单 2 显示了其中最重要的部分。

  清单 2. 在rest-servlet.xml文件中创建Spring MVC配置

以下是引用片段:
<context:component-scan base-package="dw.spring3.rest.controller" />
<!--To enable @RequestMapping process on type level and method level-->
<bean class="org.springframework.web.servlet.mvc.annotation
.DefaultAnnotationHandlerMapping" />
<bean class="org.springframework.web.servlet.mvc.annotation
.AnnotationMethodHandlerAdapter" />
<!--Use JAXB OXM marshaller to marshall/unmarshall following class-->
<bean id="jaxbMarshaller"
class="org.springframework.oxm.jaxb.Jaxb2Marshaller">
<property name="classesToBeBound">
<list>
<value>dw.spring3.rest.bean.Employee</value>
<value>dw.spring3.rest.bean.EmployeeList</value>
</list>
</property>
</bean>
<bean id="employees" class=
"org.springframework.web.servlet.view.xml.MarshallingView">
<constructor-arg ref="jaxbMarshaller" />
</bean>
<bean id="viewResolver" class=
"org.springframework.web.servlet.view.BeanNameViewResolver" />

  上面的代码中:

  Component-scan启用对带有Spring注释的类进行自动扫描,在实践中,它将检查控制器类中所定义的@Controller注释。
  DefaultAnnotationHanlderMappings和AnnotationMethodHandlerAdapter使用@ReqeustMapping注释的类或函数的beans由Spring处理这个注释将在下一节进行详细介绍。
  Jaxb2Mashaller定义使用JAXB 2进行对象XML映射(OXM)的编组器(marshaller)和解组器(unmarshaller )
  MashallingView定义一个使用Jaxb2Mashaller的XML表示view
  BeanNameViewResolver使用用户指定的bean名称定义一个视图解析器
  本例将使用名为“employees”的MarshallingView。
  这样就完成了Spring的相关配置。下一步是编写一个控制器来处理用户请求。清单3显示的是控制器类。追问

能不复制吗。我是完全对rest服务不懂才问的,你这样回答很不服责任。我现在都不知道eclipse要安装什么插件,要在哪里创建rest服务都不知道,更别说写代码了。你这样一对原理放上来,不是敷衍了事吗。人人都像你这样,知识又如何传播。

以上是关于如何在eclipse上配置rest服务啊的主要内容,如果未能解决你的问题,请参考以下文章

如何在 ubuntu 上为 django restful 服务配置 apache2

兄弟们,在myeclipse上如何安装freemaker插件,急用啊,

我用eclipse编写了程序 怎么在一个电脑上运行客户端和服务器端的程序啊

如何在 Eclipse 中手动配置 Glassfish 服务器

我用eclipse开发了一个web项目,如何发布到我的服务器上?

用eclipse开发前端页面html+js,并与php开发的后端进行交换,请教如何在eclipse上配置环境及服务器