webService的具体实现其实是挺多的,相对也比较简单,就是将用户所定义的接口与实现类通过webService的方式开放到url访问,好,下面我们面简单的对webService做一个简单的交互。
第一步 新建一个webservice interface(注意加入注解包)
package com.web;
import javax.jws.WebService;
@WebService
public interface MyService {
//接口的定义
public int add(int x, int y);
public int dec(int x, int y);
}
第二步 新建一个webservice interface实现类(注意加入注解包)
package com.web;
import javax.jws.WebService;
@WebService(endpointInterface="com.web.MyService")
public class MyServiceImpl implements MyService {
public int add(int x, int y) {
System.out.println(x+"+"+y+"="+(x+y));
return x+y;
}
public int dec(int x, int y) {
System.out.println(x+"-"+y+"="+(x-y));
return x-y;
}
}
完成了这两步 一个webService 的接口就已经完成了, 重点在 @WebService 的使用
下面启动使用接口,但要注意的是,该接口通过tomcat或者main方法启动,进程才能保留
第三步 发布webservice(注意加入注解包)
package com.web;
import javax.xml.ws.Endpoint;
/**
* Created by kangz on 2016/11/17.
*/
public class TestService {
public static void main(String[] args) throws Exception
{
Endpoint.publish("http://10.0.5.154:8083/wcms/", new MyServiceImpl());
}
}
启动之后,你会发现,有一个进程会一直在那保留着,在浏览器中输入
http://10.0.5.154:8083/wcms/?wsdl 时会出现如下图所示的信息,表示接口启动成功
恭喜你,你已经成功的将实现了webService的服务了
测试代码:
package com.web;
import javax.xml.namespace.QName;
import javax.xml.ws.Service;
import java.net.URL;
/**
* Created by kangz on 2016/11/17.
*/
public class TestImpl {
public static void main(String[] args) throws Exception
{
URL url=new URL("http://10.0.5.154:8083/wcms/?wsdl");
QName qName=new QName("http://web.com/", "MyServiceImplService");
Service service=Service.create(url, qName);
MyService my=service.getPort(MyService.class);
System.out.println(my.add(1, 5));
}
}
QName 的第二个参数是页面上的
<service name="MyServiceImplService">
<port name="MyServiceImplPort" binding="tns:MyServiceImplPortBinding">
<soap:address location="http://10.0.5.154:8083/wcms/"/>
</port>
</service>
下面是小编的微信转帐二维码,小编再次谢谢读者的支持,小编会更努力的
----请看下方↓↓↓↓↓↓↓
百度搜索 Drools从入门到精通:可下载开源全套Drools教程
深度Drools教程不段更新中:
更多Drools实战陆续发布中………
扫描下方二维码关注公众号 ↓↓↓↓↓↓↓↓↓↓