@WebService @WebMethod 详解

形象图解

首先AB均需要@WebService
如果

@WebService(endpointInterface="package.B")
public class A implements/extends B

那么有以下三种情况
1. A的自有方法(不能被发现)
2. A的重写方法(被发现且使用该方法)
3. A的继承方法(被发现且使用父类该方法)

          A          B
          |
--->----<-|          |->
--->----<------------|->

@WebService

Marks a Java class as implementing a Web Service, or a Java interface as defining a Web Service interface.

name

wsdl:portType

提供方法的类的别名

默认是该类名

HelloServiceImpl serv = service.getPort(HelloServiceImpl.class);

targetNamespace

在A使用(AB模式)wsdl:service
在B使用(AB模式)wsdl:portType
在A使用(A  模式)wsdl:service 、wsdl:portType

使用 endpointInterface="package.B" 开启AB模式

命名空间未指定的使用默认命名空间

命名空间影响client生成代码时的package

serviceName

wsdl:service 

QName qname = new QName("http://impl.service.zno.cn/","HelloService1");

默认serviceName 是 默认name+Service

指定name不能改变serviceName ,依旧是默认name+Service

portName

wsdl:port

不同于name ,它只影响xml ,不会影响client生成代码

wsdlLocation

The location of a pre-defined WSDL describing the service.

endpointInterface

定义服务的抽象web服务,暴露用 

@WebMethod

operationName

wsdl:operation

方法伪装

action

soap action 

exclude

方法排除用

 

转载于:https://www.cnblogs.com/zno2/p/4651238.html

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

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值