`

利用resteasy框架构建rest webservice----第四波:resteasy与spring真正集成发布我们的restful webservice 服务(实例、教程)

 
阅读更多

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

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

  1. <dependencies>
  2. <!--corelibrary-->
  3. <dependency>
  4. <groupId>org.jboss.resteasy</groupId>
  5. <artifactId>resteasy-jaxrs</artifactId>
  6. <version>2.2.1.GA</version>
  7. </dependency>
  8. <!--optionalmodules-->
  9. <!--Springintegration-->
  10. <dependency>
  11. <groupId>org.jboss.resteasy</groupId>
  12. <artifactId>resteasy-spring</artifactId>
  13. <version>2.2.1.GA</version>
  14. </dependency>
  15. <!--JAXBsupport-->
  16. <dependency>
  17. <groupId>org.jboss.resteasy</groupId>
  18. <artifactId>resteasy-jaxb-provider</artifactId>
  19. <version>2.2.1.GA</version>
  20. </dependency>
  21. <!--spring-->
  22. <dependency>
  23. <groupId>org.springframework</groupId>
  24. <artifactId>spring</artifactId>
  25. <version>2.5.6.SEC03</version>
  26. </dependency>
  27. </dependencies>

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

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

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

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

  1. <!DOCTYPEweb-appPUBLIC
  2. "-//SunMicrosystems,Inc.//DTDWebApplication2.3//EN"
  3. "http://java.sun.com/dtd/web-app_2_3.dtd">
  4. <web-app>
  5. <display-name>ArchetypeCreatedWebApplication</display-name>
  6. <context-param>
  7. <param-name>contextConfigLocation</param-name>
  8. <param-value>classpath*:applicationContext*.xml</param-value>
  9. </context-param>
  10. <!--
  11. <context-param>
  12. <param-name>resteasy.scan.resources</param-name>
  13. <param-value>true</param-value>
  14. </context-param>
  15. -->
  16. <listener>
  17. <listener-class>org.jboss.resteasy.plugins.server.servlet.ResteasyBootstrap</listener-class>
  18. </listener>
  19. <listener>
  20. <listener-class>org.jboss.resteasy.plugins.spring.SpringContextLoaderListener</listener-class>
  21. </listener>
  22. <servlet>
  23. <servlet-name>Resteasy</servlet-name>
  24. <servlet-class>org.jboss.resteasy.plugins.server.servlet.HttpServletDispatcher</servlet-class>
  25. </servlet>
  26. <servlet-mapping>
  27. <servlet-name>Resteasy</servlet-name>
  28. <url-pattern>/*</url-pattern>
  29. </servlet-mapping>
  30. </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. <?xmlversion="1.0"encoding="UTF-8"?>
  2. <beansxmlns="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. <!--servicepoint-->
  7. <beanid="testServicePoint"class="com.jd.interfacce.service.point.TestServicePoint">
  8. <propertyname="manager"ref="manager"/>
  9. </bean>
  10. <!--MANAGER-->
  11. <beanid="manager"class="com.jd.interfacce.manager.impl.ManagerImpl"/>
  12. </beans>

其中
  1. testServicePoint

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

4.资源类

  1. packagecom.jd.interfacce.service.point;
  2. importjavax.ws.rs.GET;
  3. importjavax.ws.rs.Path;
  4. importjavax.ws.rs.PathParam;
  5. importcom.jd.interfacce.manager.Manager;
  6. /**
  7. *servicepointendpoint
  8. *@author
  9. *
  10. */
  11. @Path(value="/")
  12. publicclassTestServicePoint{
  13. Managermanager;
  14. @GET
  15. @Path(value="/echo/{message}")
  16. publicStringgetMessage(@PathParam(value="message")Stringmessage)
  17. {
  18. //returnmessage;
  19. returnmanager.getMessage(message);
  20. }
  21. publicManagergetManager(){
  22. returnmanager;
  23. }
  24. publicvoidsetManager(Managermanager){
  25. this.manager=manager;
  26. }
  27. }

5.manager类
  1. packagecom.jd.interfacce.manager.impl;
  2. importcom.jd.interfacce.manager.Manager;
  3. publicclassManagerImplimplementsManager{
  4. @Override
  5. publicStringgetMessage(Stringmessage)
  6. {
  7. returnmessage;
  8. }
  9. }

分享到:
评论

相关推荐

    使用RESTEasy构建WebService简介

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

    Jersey和Tomcat构建RESTful WebService

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

    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应用程序...

    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 ...

    RESTful Java Web Services

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

    使用eclipse创建restful webservice 工程

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

    restface--webservice

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

    基于REST的webservice规范2.0版本

    4. **编写客户端代码**:利用JAX-RS 2.0提供的客户端API来调用RESTful服务。 #### 六、案例分析 假设我们需要构建一个简单的图书管理RESTful服务,可以通过以下步骤来实现: 1. **定义资源类**: ```java @Path...

    rest webservice demo

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

    java调用webservice的各种方法总结

    Java调用Web服务(Web Service)是开发过程中常见的任务,主要涉及如何与远程服务进行交互。Web服务通常基于SOAP(Simple Object Access Protocol)或REST(Representational State Transfer)架构,而Java提供了...

    webservice

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

    云门户rest开发

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

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

    本文档主要探讨了软件开发中的Web服务实现,特别是Restful WebService的不同框架之间的性能比较。文档详细描述了一个测试案例,该案例用于评估Apache CXF、Jersey、RESTEasy和Restlet这四个不同框架在处理RESTful...

    webservice例子JAVA写

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

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

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

    jdk webservice

    标题 "JDK Webservice" 指的是使用Java Development Kit (JDK) 来开发Web服务。Web服务是一种通过互联网交换结构化信息的方式,它允许不同的应用程序之间进行通信。在Java中,JDK提供了标准的API,如Java API for ...

Global site tag (gtag.js) - Google Analytics