webservice 简单项目之心得体会

项目用到webservice开发,之前多少接触过但都是一知半解,今天整理一下思路。

第一部分:创建服务端

注意看注解的解释。

@WebService
@SOAPBinding(style = Style.RPC)
public class Service01 {
    /**
     * 发布项目
     */
    public static void main(String[] args) {

        System.out.println("web service start");  
        //第一种发布方式:通过CXF提供的JaxWsServerFactoryBean来发布webservice  
        JaxWsServerFactoryBean factory = new JaxWsServerFactoryBean();  
        factory.setServiceClass(Service02.class);  
        factory.setAddress("http://10.19.128.192:9999/nsrcheck");  

        Server server = factory.create();  
        server.start();  

        //第二种方式,通过JAX-WS提供的Endpoint来发布webservice  
//        Endpoint.publish("http://10.19.128.192:9999/nsrcheck", new Service02());  
        System.out.println("web service started"); 
    }
    /**
     * 必须有一个共有方法
     */
    @WebMethod 
    @WebResult(partName = "RESULT")
    public String sayHello((@WebParam(name ="name")String name){
        return "say:"+name;
    }

这样直接运行就可以了。
说明:
@WebService :实现 Web Service 的 Java 类必须指定 @WebService,注释目标:类型。
@WebMethod: 注释表示作为一项 Web Service 操作的方法。注释目标:方法。
@WebParam: 注释用于定制从单个参数至 Web Service 消息部件和 XML 元素的映射。注释目标:参数。
@WebResult :注释用于定制从返回值至 WSDL 部件或 XML 元素的映射。注释目标:方法。
@SOAPBinding 注释指定 Web Service 与 SOAP 消息协议之间的映射。将此注释应用于客户机或服务器服务端点接口(SEI)上的类型或方法,或者应用于 JavaBeans 端点的服务器端点实现类。注释目标:类型或方法。
返回效果:

<RESULT>
   <return>晓明</return>
</RESULT>

注解参考
标签使用

第二部分:返回对象

/**
*返回类型对象
*/
public class ResultDto {
    private String NAME; //必须是private,否则报错
    private String SEX;
    ...
    public String getNAME() {
        return NSR;
    }
    public void setNAME(String name) {
        NAME = name;
    }
    public String getSEX()
    ...

}

修改上面的sayHello方法

    @WebMethod 
    @WebResult(partName = "RESULT")
    public ResultDto sayHello((@WebParam(name ="name")String name){
        ResultDto result = new ResultDto ();
        result.setNAME(name);
        return result ;
    }

返回效果:

<RESULT>
   <SEX/>
   <NAME>晓明</NAME>
</RESULT>
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值