`

利用resteasy框架构建rest webservice----第四波:resteasy与spring真正集成发布我们的restful webservice

 
阅读更多

原本以为根据文档集成resteasy与spring很简单,但是却还是花费的一定时间,避免大家走弯路----现在网上有的相关的集成都只是,spring加入进项目,木有与resteasy真正集成

老规矩,先上MAVEN的配置文件中依赖包:

  1.  <dependencies>  
  2.    <!-- core library -->  
  3.    <dependency>  
  4.       <groupId>org.jboss.resteasy</groupId>  
  5.       <artifactId>resteasy-jaxrs</artifactId>  
  6.       <version>2.2.1.GA</version>  
  7.    </dependency>  
  8.   
  9.    <!-- optional modules -->  
  10.      <!-- Spring integration -->  
  11.    <dependency>  
  12.       <groupId>org.jboss.resteasy</groupId>  
  13.       <artifactId>resteasy-spring</artifactId>  
  14.       <version>2.2.1.GA</version>  
  15.    </dependency>  
  16.       
  17.    <!-- JAXB support -->  
  18.    <dependency>  
  19.       <groupId>org.jboss.resteasy</groupId>  
  20.       <artifactId>resteasy-jaxb-provider</artifactId>  
  21.       <version>2.2.1.GA</version>  
  22.    </dependency>  
  23.       
  24.    <!-- spring -->  
  25.             <dependency>  
  26.                 <groupId>org.springframework</groupId>  
  27.                 <artifactId>spring</artifactId>  
  28.                                 <version>2.5.6.SEC03</version>  
  29.                        </dependency>  
  30. </dependencies>  

 

注意上图中得resteasy-spring模块依赖,和spring依赖

resteasy-spring直接配置似乎不能自动下载,如果不行可以自己去官网下载然后安装到私服仓库

还有spring的依赖必须是要有的,resteasy-spring只是提供集成代码

2.关键的web.xml中得配置

  1. <!DOCTYPE web-app PUBLIC  
  2.  "-//Sun Microsystems, Inc.//DTD Web Application 2.3//EN"  
  3.  "http://java.sun.com/dtd/web-app_2_3.dtd" >  
  4.   
  5. <web-app>  
  6.   <display-name>Archetype Created Web Application</display-name>  
  7.   <context-param>  
  8.         <param-name>contextConfigLocation</param-name>  
  9.         <param-value>classpath*:applicationContext*.xml</param-value>  
  10.     </context-param>  
  11.   <!--  
  12.       
  13.     <context-param>      
  14.       
  15.         <param-name>resteasy.scan.resources</param-name>      
  16.         <param-value>true</param-value>  
  17.     </context-param>      
  18.     -->  
  19.   <listener>  
  20.       <listener-class>org.jboss.resteasy.plugins.server.servlet.ResteasyBootstrap</listener-class>  
  21.    </listener>  
  22.   
  23. <listener>  
  24.     <listener-class>org.jboss.resteasy.plugins.spring.SpringContextLoaderListener</listener-class>  
  25.   </listener>  
  26.    <servlet>  
  27.       <servlet-name>Resteasy</servlet-name>  
  28.       <servlet-class>org.jboss.resteasy.plugins.server.servlet.HttpServletDispatcher</servlet-class>  
  29.    </servlet>  
  30.   
  31.    <servlet-mapping>  
  32.       <servlet-name>Resteasy</servlet-name>  
  33.       <url-pattern>/*</url-pattern>  
  34.    </servlet-mapping>  
  35.     
  36. </web-app>  


相比原来的配置文件多了

  1. <listener-class>org.jboss.resteasy.plugins.spring.SpringContextLoaderListener</listener-class>  

  1. <context-param>  
  2.         <param-name>contextConfigLocation</param-name>  
  3.         <param-value>classpath*:applicationContext*.xml</param-value>  
  4.     </context-param>  

3.application.xml的配置

  1. <?xml version="1.0" encoding="UTF-8"?>  
  2. <beans xmlns="http://www.springframework.org/schema/beans"  
  3. xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"  
  4. xsi:schemaLocation="http://www.springframework.org/schema/beans  
  5. http://www.springframework.org/schema/beans/spring-beans-3.0.xsd ">   
  6.     <!-- service point -->  
  7.     <bean id="testServicePoint" class="com.jd.interfacce.service.point.TestServicePoint">  
  8.         <property name="manager" ref="manager" />  
  9.     </bean>  
  10.     <!-- MANAGER -->  
  11.     <bean id="manager" class="com.jd.interfacce.manager.impl.ManagerImpl"/>  
  12. </beans>  


其中

  1. testServicePoint  

是我们的资源resouce也就是发布接口的类

4.资源类

  1. package com.jd.interfacce.service.point;  
  2.   
  3. import javax.ws.rs.GET;  
  4. import javax.ws.rs.Path;  
  5. import javax.ws.rs.PathParam;  
  6.   
  7. import com.jd.interfacce.manager.Manager;  
  8. /** 
  9.  * service point endpoint 
  10.  * @author  
  11.  * 
  12.  */  
  13. @Path(value = "/")  
  14. public class TestServicePoint {  
  15.     Manager manager;  
  16.       
  17.     @GET  
  18.     @Path(value = "/echo/{message}")  
  19.     public String getMessage(@PathParam(value = "message") String message)  
  20.     {  
  21. //      return message;  
  22.         return manager.getMessage(message);  
  23.     }  
  24.       
  25.     public Manager getManager() {  
  26.         return manager;  
  27.     }  
  28.     public void setManager(Manager manager) {  
  29.         this.manager = manager;  
  30.     }  
  31. }  


5.manager类

  1. package com.jd.interfacce.manager.impl;  
  2.   
  3. import com.jd.interfacce.manager.Manager;  
  4.   
  5. public class ManagerImpl implements Manager{  
  6.     @Override  
  7.     public String getMessage(String message)  
  8.     {  
  9.         return message;  
  10.     }  
  11. }  
分享到:
评论

相关推荐

    使用RESTEasy构建WebService简介

    综合上述知识点,使用RESTEasy框架构建WebService的整个过程,从项目初始化、资源类的编写、服务类的实现、拦截器的使用、文件上传的处理、与Spring框架的集成,以及前端请求的编码问题解决等方面都提供了一个清晰的...

    Resteasy JAX-RS 3.0.6-all.zip最新官方zip包

    Resteasy JAX-RS 3.0.6-all.zip 是一个包含了Resteasy框架的最新官方版本,该框架是基于Java的,主要用于实现JAX-RS(Java API for RESTful Web Services)规范。JAX-RS是一种标准接口,它定义了如何在Java应用程序...

    Jersey和Tomcat构建RESTful WebService

    ### Jersey和Tomcat构建RESTful WebService #### RESTful Web服务简介 REST(Representational State Transfer)是由HTTP规范1.0和1.1版的主要作者之一Roy Fielding在其2000年的博士论文中提出的。REST的核心思想...

    restful-webService

    在这个项目中,"restful-webService" 提供了一个框架,用于构建RESTful风格的服务,包括客户端和服务端两大部分。这个框架允许开发者专注于业务逻辑,而无需从零开始实现所有基础结构。 1. **RESTful原则**: REST...

    resteasy示例

    JBoss RESTEasy 是一个用来使用Java语言开发 RESTFul Web服务的框架。RESTEasy 项目是 JAX-RS 的一个实现,集成的一些亮点: * 不需要配置文件,只要把JARs文件放到类路径里面,添加 @Path 注解就可以了。 * 完全...

    restful:基于resteasy实现的restful webservice。和spring mvc结合起来使用。部署在tomcat和jboss中都可以。jboss中包含了部分restful的基础jar

    restful 基于resteasy实现的restful webservice。和spring mvc结合起来使用。部署在tomcat和jboss中都可以。jboss中包含了部分restful的基础jar。

    巧用 Jersey RESTful WebService框架解决文件上传乱码

    在IT行业中,RESTful WebService框架是开发网络应用的重要工具,Jersey作为Java平台上的一个开源框架,专门用于实现RESTful服务。本文将深入探讨如何巧妙利用Jersey框架解决文件上传时可能出现的乱码问题,同时也会...

    对WebService的系统研究, 七种方式实现!

    在本文中,我们将深入探讨七种实现WebService的方法,这些方法涵盖了从基本的JDK实现到利用高级框架如CXF和Spring的解决方案。 1. **JDK SOAP实现**:基于Java API for XML Processing (JAXP) 和SOAP with ...

    使用eclipse创建restful webservice 工程

    在IT行业中,RESTful Web服务已经成为构建分布式系统和应用程序接口(API)的主流方式。它基于Representational State Transfer(表述性状态转移)架构原则,提供了一种轻量级、无状态、可缓存的交互模式。本文将...

    RESTful Java Web Services

    1. **选择合适的框架**:Java提供了多种用于开发RESTful Web服务的框架,包括Spring Boot、Jersey和RestEasy等。Spring Boot因其强大的生态系统和简化配置的功能而受到广泛欢迎;Jersey则是Java EE 7标准的一部分,...

    rest webservice demo

    在这个“rest webservice demo”中,我们将会探讨如何使用Java来快速实现一个RESTful Web服务。 Java中实现REST服务最常用的框架是JAX-RS,它提供了一套标准API,使得开发者可以方便地创建RESTful接口。JAX-RS的...

    restface--webservice

    RESTface作为一个Web服务框架,旨在简化RESTful服务的创建,使开发者能够更高效地构建可交互的、分布式的系统。 **RESTful架构原则** 1. **客户端-服务器架构**:客户端和服务器之间通过明确的接口进行通信,双方...

    java调用webservice的各种方法总结

    对于消费者,可以使用Spring的WebServiceTemplate类,或者利用XFire或CXF的集成。 8. **OkHttp** OkHttp是另一个高效的HTTP客户端库,常用于Android开发。它可以用来发送REST请求,处理响应,并具有缓存、连接池等...

    云门户rest开发

    云门户REST开发主要涉及到的技术点包括RESTful Web Service、Spring框架以及Apache Tomcat服务器。REST(Representational State Transfer)是一种轻量级的网络应用程序设计风格和开发方式,基于HTTP协议,用于构建...

    软件开发与项目管理-1期 KC02_模块五_模块案例_Restful_WebService实现对比.docx

    文档详细描述了一个测试案例,该案例用于评估Apache CXF、Jersey、RESTEasy和Restlet这四个不同框架在处理RESTful请求时的性能、稳定性和资源消耗。 测试用例涉及一个名为`Customer`的对象,包含`id`和`name`两个...

    canjava源码-Webservice-Java-source-code:这是我有关WebserviceJava的源代码!您可以在以下位置观

    【标题】"canjava源码-Webservice-Java-source-code" 涉及的主要知识点是Web服务(Webservice)的实现,使用Java编程语言。Web服务是一种基于互联网的、能够进行交互的数据交换标准,它允许应用程序之间进行通信,...

    webservice

    Web服务(WebService)是一种基于互联网的、平台独立的交互方式,允许不同的应用程序之间进行通信和数据交换。在本文中,我们将深入探讨Web服务的核心概念、技术栈、应用场景以及如何使用工具来开发和测试Web服务。 ...

    Java RESTful Plugin for Eclipse:用户可以一键创建 Java RESTful Web 服务。-开源

    用于 Eclipse 的 RESTful 插件帮助用户一键创建 RESTful ... 1) Spring RESTful Webservice 2) Jersey RESTful Webservice 3) RESTEasy RESTful Webservice 4) Restlet RESTful Webservice URL:http://oneclicklabs.io

    webservice例子JAVA写

    总结,本例"webservice例子JAVA写"旨在教授如何使用Java构建和使用Web服务,涵盖了SOAP和REST两种常见的Web服务实现方式,以及客户端调用的实现。通过学习和实践,你将能够创建自己的分布式系统,实现不同应用程序间...

Global site tag (gtag.js) - Google Analytics