Java maven项目通过cxf框架发布WebServices接口,及jdk发布WebServices接口

1.使用JDK开发(1.6及以上版本)
(1)定义一个interface,使用@WebService注解标注接口,使用@WebMethod注解标注接口中定义的所有方法,如下所示:

package com.company;
import javax.jws.WebMethod;
import javax.jws.WebService;

//使用@WebService注解标注WebServiceI接口
@WebService
public interface WebServiceInter {

    //使用@WebMethod注解标注WebServiceI接口中的方法
     @WebMethod
     String sayHello(String name);

     @WebMethod
     String save(String name,String pwd);
}

(2)编写interface的实现类,使用@WebService注解标注实现类,实现接口中定义的所有方法,如下所示:

package com.company;

import javax.jws.WebService;

@WebService
public class WebServiceImpl implements WebServiceInter{

    @Override
     public String sayHello(String name) {
                 System.out.println("WebService sayHello "+name);
                 return "sayHello "+name;
             }

    @Override
    public String save(String name, String pwd) {
                System.out.println("WebService save "+name+", "+pwd);
                return "save Success";
            }
}

(3)使用Endpoint(终端)类发布webservice,代码如下:

package com.company;

import javax.xml.ws.Endpoint;



public class Main {
    public static void main(String[] args) {
	    // write your code here
        String address = "http://192.168.1.138:8080/Company/WebServices";
        WebServiceInter webService = new WebServiceImpl();
        //使用Endpoint类提供的publish方法发布WebService,发布时要保证使用的端口号没有被其他应用程序占用
        Endpoint.publish(address , webService);
        System.out.println("发布webservice成功!");
    }
}

运行WebServicePublish类,就可以将编写好的WebService发布好了,WebService的访问URL是:http://192.168.1.138:8080/Company/WebServices ,如下图所示:
在这里插入图片描述

2.通过cxf框架发布WebServices接口
(1)使用maven管理jar包,首先在maven添加使用到的cxf jar包依赖

 <!--web service cxf -->
        <dependency>
            <groupId>org.apache.cxf</groupId>
            <artifactId>cxf-rt-transports-http</artifactId>
            <version>3.1.8</version>
        </dependency>
        <dependency>
            <groupId>org.apache.cxf</groupId>
            <artifactId>cxf-rt-frontend-jaxws</artifactId>
            <version>3.1.8</version>
        </dependency>

(2)配置Spring-context.xml文件,WebService接口实现类同jdk发布接口一致

<beans xmlns="http://www.springframework.org/schema/beans"
	   xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
	   xmlns:aop="http://www.springframework.org/schema/aop"
	   xmlns:context="http://www.springframework.org/schema/context"

	   xmlns:jaxws="http://cxf.apache.org/jaxws"

	   xsi:schemaLocation="http://www.springframework.org/schema/beans
					

						http://cxf.apache.org/jaxws
						http://cxf.apache.org/schemas/jaxws.xsd
	">
<bean id="webServiceInter" class="com.fh.service.WebServices.WebServiceInter" />
	<jaxws:endpoint id="myService" implementor="#webServiceInter"
					address="/WebServices">
	</jaxws:endpoint>

(3)配置web.xml文件

<!-- 配置CXF框架的核心Servlet -->
  <servlet>
    <servlet-name>CXFServlet</servlet-name>
    <servlet-class>org.apache.cxf.transport.servlet.CXFServlet</servlet-class>
    <load-on-startup>2</load-on-startup>
  </servlet>
  <!-- 注解3 -->
  <servlet-mapping>
    <servlet-name>CXFServlet</servlet-name>
    <url-pattern>/Company/*</url-pattern>
  </servlet-mapping>

完成上面的步骤后就可以启动Tomcat并访问
在这里插入图片描述

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值