`

java webservice实例教程

 
阅读更多
java webservice实例教程
最近在学习web services,网上先关的资料不多,讲的都是很基础,例子也很简单,自己动手敲了敲在这里和大家分享一下,希望能对初学者有所帮助。



Web Services服务器端开发

服务器端开发用的是XFire,版本是1.2.6,XFire现在已经成apache下面的一个项目CXF的一部分了,老早就不更新版本了,XFire过不过时我是不知道,不过还有一些人在用。

开发环境是:IDEA,Tomcat 8.0

新建一个项目,可以是web project也可以是web service project,区别不大。项目建好之后:(项目名假设为:webservice)

1、下载XFire1.2.6.jar

jar包下载地址 http://pan.baidu.com/s/1bZ8yf0

加压下载好的文件,将lib文件夹下所有jar包添加到项目中,并且将xfire-all-1.2.6.jar加入到项目中。



2、编写服务接口

public interface CalculatorService {
    public int add(int a,int b);
    public int sub(int a,int b);
    public int mul(int a,int b);
    public int div(int a,int b);
}
3、编写服务接口实现类

public class CalculatorServiceImpl implements CalculatorService{
    @Override
    public int add(int a, int b) {
        return  a+b;  //To change body of implemented methods use File | Settings | File Templates.
    }
 
    @Override
    public int sub(int a, int b) {
        return a-b;  //To change body of implemented methods use File | Settings | File Templates.
    }

    @Override
    public int mul(int a, int b) {
        return a*b;  //To change body of implemented methods use File | Settings | File Templates.
    }

    @Override
    public int div(int a, int b) {
        return a/b;  //To change body of implemented methods use File | Settings | File Templates.
    }
}

4、编写web.xml

<?xml version="1.0" encoding="UTF-8"?>
<web-app xmlns="http://java.sun.com/xml/ns/javaee"
         xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
         xsi:schemaLocation="http://java.sun.com/xml/ns/javaee
          http://java.sun.com/xml/ns/javaee/web-app_3_0.xsd"
         version="3.0">

    <servlet>
        <servlet-name>XFireServlet</servlet-name>
        <servlet-class>org.codehaus.xfire.transport.http.XFireConfigurableServlet</servlet-class>
        <load-on-startup>0</load-on-startup>
    </servlet>

    <servlet-mapping>
        <servlet-name>XFireServlet</servlet-name>
        <url-pattern>/services/*</url-pattern>
    </servlet-mapping>

    <servlet-mapping>
        <servlet-name>XFireServlet</servlet-name>
        <url-pattern>/services/XFireServlet/*</url-pattern>
    </servlet-mapping>

    <welcome-file-list>
        <welcome-file>index.jsp</welcome-file>
    </welcome-file-list>
</web-app>

5、配置服务
在src目录下新建WEB-INF文件夹,在WEB-INF文件夹下新建xfire文件夹,在xfire下新建services.xml文件。

name表示服务的名字可以自己随便定义,serviceClass指明服务接口类,implementationClass指明服务实现类

<?xml version="1.0" encoding="UTF-8"?>
<beans xmlns="http://xfire.codehaus.org/config/1.0">
    <service>
        <name>CalculatorService</name>
        <serviceClass>com.young.service.CalculatorService</serviceClass>
        <implementationClass>
            com.young.service.CalculatorServiceImpl
        </implementationClass>
    </service>
</beans>





servlet jar 默认 service.xml 文件目录结构如下:
src/META-INF/xfire/services.xml  下。

方法二:也可以配置web.xml的时候 指定文件config
web.xml

<servlet>
        <servlet-name>XFireServlet</servlet-name>
        <servlet-class>org.codehaus.xfire.transport.http.XFireConfigurableServlet</servlet-class>
        <init-param>
            <param-name>config</param-name>
            <param-value>services.xml</param-value>
        </init-param>
</servlet>
<servlet-mapping>
        <servlet-name>XFireServlet</servlet-name>
        <url-pattern>/services/*</url-pattern>
</servlet-mapping>

service.xml

<beans>
<service xmlns="http://xfire.codehaus.org/config/1.0">
<name>EoaFeedbackSerivce</name>
<namespace>http://parp-core.paic.com.cn/parp-app/services/EoaFeedbackSerivce</namespace>
<serviceClass>com.paic.reportportal.eoa.biz.webservice.EoaFeedbackSerivce</serviceClass>
<implementationClass>com.paic.reportportal.eoa.biz.webservice.impl.EoaFeedbackServiceImpl</implementationClass>
</service>
</beans>







6、启动服务

将该项目添加到tomcat中,启动tomcat,在浏览器中输入http://localhost:8080/webservice/services就能看到该项目下所有服务,点击服务后面的[wsdl],就会看到服务的wsdl文件内容。
java webservice实例教程

6、编写客户端
通过WSDL地址来创建动态客户端,代码如下

public class ClientTest {
    public static void main(String[] args) throws Exception {
        Client client = new Client(new URL("http://localhost:8080/webservice/services/CalculatorService?wsdl"));
        Object[] results = client.invoke("add", new Object[]{1, 2});
        System.out.println(results[0]);
    }
}


java webservice实例教程

7.跨语言编写客户端
前面编写的客户端采用的是java语言,与Service采用的是同一个JVM,无法直观的体会出webservice跨平台跨语言的特性
下面采用c#编写客户端
打开Visual Studio,新建一个c# console project,命名为wsclient,添加引用,选择添加web引用,输入http://localhost:8080/webservice/services/CalculatorService?wsdl
给该引用命名为CalculatorService
编写测试代码,代码如下

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using wsclient.CalculatorService;
namespace wsclient
{
    class Program
    {
        static void Main(string[] args)
        {
            CalculatorService.CalculatorService cal = new CalculatorService.CalculatorService();
            int result = cal.add(1, 2);
            Console.WriteLine(result);
            Console.ReadKey();
        }
    }
}
点击运行,效果如下
java webservice实例教程



博文地址 http://veryyoung.sinaapp.com/?p=111
http://www.zuidaima.com/share/1590350954564608.htm
分享到:
评论

相关推荐

    java webservice实例教程PPT

    java webservice实例教程ppt,共15讲,java webservice实例教程适合对象:想要学习SOA面向服务编程思想,学习Webservice技术,希望学习系统间通信设计的Java设计开发人员。java webservice实例教程适合于各个层次的...

    WebService教程+实例+代码提示功能WebService实例.rar

    这个"WebService教程+实例+代码提示功能WebService实例.rar"压缩包文件显然包含了关于WebService的学习资料、实例代码和可能的代码提示功能,旨在帮助用户深入理解和实践WebService的开发。 首先,"教程地址.txt"很...

    java Webservice 简单实例

    Java WebService 简单实例教程 在Java开发中,WebService是一种常见的用于应用程序间通信的技术。它基于标准的XML(可扩展标记语言)和WSDL(Web服务描述语言)进行数据交换,允许不同平台和语言的应用程序之间共享...

    java webService接口开发案例

    Java WebService接口开发是将Java应用程序暴露为网络服务的一种方式,允许不同系统间的数据交换和交互。本案例将深入探讨如何使用Java实现Web服务的创建、发布和调用。 一、理解WebService WebService是一种基于...

    webservice 实例教程

    在本实例教程中,我们将深入探讨Web服务的核心概念,以及如何使用XFire框架来创建和消费Web服务。 首先,我们需要理解Web服务的基本概念。Web服务是通过使用开放标准,如XML(可扩展标记语言)、WSDL(Web服务描述...

    webService实例(java面试必用)

    标题"webService实例(java面试必用)"指出,这是一个针对Java开发者,尤其是面试准备者的Web Service实践教程。在Java面试中,理解Web Service的基本概念、工作原理和如何实现是必不可少的技能。 描述"Java中的...

    java webservice教程

    这个教程“Java WebService教程”涵盖了使用Java技术开发Web服务的相关知识,包括API文档和示例,是学习Java WebService的理想资源。 首先,Web服务的核心概念是SOAP(Simple Object Access Protocol),它是一种...

    WebService开发实例图解教程

    【WebService开发实例图解教程】 WebService是一种基于XML的开放标准,用于在不同的应用程序之间交换数据和服务。它允许不同平台和编程语言之间的互操作性,通过HTTP协议提供服务,因此易于集成到现有系统中。本...

    java Webservice

    本教程将带你逐步了解如何创建和使用Java WebService。 一、Web服务基础 Web服务是一种通过互联网交换业务逻辑的软件系统。它们基于开放标准,如HTTP、SOAP和WSDL,使得跨平台的数据交换成为可能。Java WebService...

    java-webservice实例

    Java WebService实例是一个实际操作教程,它展示了如何在Java环境中创建和发布Web服务。Web服务是一种基于开放标准的,能够使应用程序在不同平台之间交换数据的技术。本实例着重于使用Java API for XML Web Services...

    Idea实现WebService实例

    本教程将详细介绍如何在Idea中实现一个简单的WebService实例。 【描述】:通过Idea实现webservice涉及到的主要步骤包括设置项目、创建服务接口、编写服务实现、部署和测试。下面我们将逐一解析这些步骤: 1. **...

    WebService应用实例及教程

    5. WebService实例 - 假设我们有一个名为“WeatherService”的WebService,提供获取天气预报的功能。 - 在WSDL中,定义了一个名为“getWeather”操作,接受城市名作为参数,返回当前天气信息。 - 客户端通过调用...

    java webservice基于xfire实例

    Java WebService基于XFire的实例教程 Web服务是一种在分布式环境中提供互操作性的技术,它允许不同系统之间通过网络交换数据。在Java中,实现Web服务的一种流行框架就是XFire,一个快速、轻量级的SOAP(Simple ...

    JAVA调用webservice并解析xml

    本教程将深入讲解如何在Java环境中,利用Eclipse或MyEclipse IDE调用Web服务并解析返回的XML数据。 首先,理解Web服务的基本概念是关键。Web服务是一种通过HTTP协议传输数据的应用程序接口(API)。SOAP是基于XML的...

    Java WebService 简单实例 方式二(axis1直接调用方式)

    ### Java WebService 简单实例 方式二(axis1直接调用方式) #### 背景介绍 在软件开发领域,特别是在企业级应用中,Web服务作为一种标准的技术规范被广泛采用,它允许不同系统间进行通信与数据交换。Java Web ...

    java axis webservice 开发实例

    通过这个简单的Java Axis WebService实例,你应该对Web服务的开发有了初步的认识。继续深入学习,包括理解SOAP消息结构、WSDL的细节以及如何处理更复杂的数据类型,将使你成为Web服务开发的专家。实践中不断探索,祝...

    javaWebService 关于讲解java调用webservice的知识

    在这个Java WebService的教程中,我们将深入探讨如何使用Java来调用Web服务。 1. **Web服务基础** - **WSDL(Web Services Description Language)**:定义了Web服务的接口,包括服务提供的操作、输入和输出消息...

    C#调用WebService实例和开发(wsdl).rar

    在本例中,"C#调用WebService实例和开发(wsdl).pdf"可能包含详细的步骤和代码示例。 2. **添加引用**:将生成的代理类添加到你的项目中,这样就可以在C#代码中直接调用Web服务的方法。 3. **实例化代理类**:...

    WebService实例、以及文档

    标题中的"WebService实例"指的是实际的WebService应用案例,这可能包括创建、调用和测试WebService的各种步骤。开发者通常会通过编写服务端接口,然后用Java的JAX-WS或其他工具如XFire来实现这些接口,将其转换为可...

    Java WebService 简单实例-客户端TheClient.rar

    Java WebService 简单实例 http://blog.csdn.net/kingmax54212008/article/details/49764401 前言:朋友们开始以下教程前,请先看第五大点的注意事项,以避免不必要的重复操作。 一、准备工作(以下为本实例...

Global site tag (gtag.js) - Google Analytics