Java工作笔记-webService发布时通用的4个注解

@WebService

@WebMethod

@WebResult

@WebParam

 

@WebService对类进行注解

1. serviceName:对外发布的服务名,指定WebService服务的名称:wsdl:service。默认值为Java类的简单名称+Service。

2. endpointInterface:服务接口全路径,指定SEI(Service EndPoint Interface)服务端点接口。

3. name:要包含XML Web Service的名称。在默认情况下,该值为XML Web Service的类名,wsdl:portType的名称。

4. portName:wsdl:portName。默认值为WebService.name + port。

5. targetNamespace:指定命名空间。

6. wsdlLocation:Web Service的WSDL文档的地址。可以网络地址,可以本地地址。

 

@WebMethod作用于@WebService的类及接口方法上

1. soperationName:指定wsdl:operation的名称。

2. exclude:排除某个方法。默认值为false。

 

@WebResult表示方法的参数

@WebParam表示方法的返回值

 

这里举一个例子:

项目结构如下:

Java工作笔记-webService发布时通用的4个注解_第1张图片

对应的代码如下:

XxxService.java

package webService;

import javax.jws.WebParam;
import javax.jws.WebResult;
import javax.jws.WebService;
import java.util.List;

@WebService
public interface XxxService {

    List getXXXData(@WebParam(name = "AAA") Integer AAA,
                             @WebParam(name = "BBB") Integer BBB,
                             @WebParam(name = "CCC") Integer CCC,
                             @WebParam(name = "DDD") Integer DDD,
                             @WebParam(name = "EEE") Integer EEE);
}

XxxServiceImpl.java

package webService;

import com.aaa.bbb.ccc.ddd;
import com.zzz.xxx.yyy.uuu.iii;

import javax.jws.WebService;
import java.util.List;

@WebService(endpointInterface = "webService.XxxService")
public class XxxServiceImpl implements XxxService{


    public List getXXXData(Integer AAA, Integer BBB, Integer CCC, Integer DDD, Integer EEE) {

	....
        return objects;
    }
}

Main.java

import webService.******;

import javax.xml.ws.Endpoint;

public class Main {


    public static void main(String[] args){

        Endpoint.publish("http://8.8.8.8:9999/XXXDB", new NewGenServiceImpl());
        System.out.println("发布成功");
    }
}

这里再补充下webService的作用:

1. 异构系统之间的通信问题。

2. 一些公共资源的调用。

你可能感兴趣的:(webservice,我的Java地带,Java,webservice,java)