WebService(三)
JAX-WS简单使用示例:
1.服务端

package com.rong.service; import javax.jws.WebMethod;
import javax.jws.WebParam;
import javax.jws.WebResult;
import javax.jws.WebService; @WebService
public interface UserService {
//private私有方法不会被发布,只会发布public方法
//exclude默认为false,即发布;若为true,即不发布
@WebMethod(operationName="getMyAge",exclude=true)
public int getAge();
public @WebResult(name="ResultType")String changeName(@WebParam(name="NameType")String name);
}
package com.rong.service; import javax.jws.WebService; //@WebService
//通过注解修改wsdl文件信息
@WebService(targetNamespace="http://service.rjl.com/",
serviceName="UserService",
portName="bindingname",
name="portname",
//UserServiceImpl可能实现多个接口,注解endpointInterface用于
//只发布哪个接口服务,并且要在那个接口中添加@WebService
endpointInterface="com.rong.service.UserService")
public class UserServiceImpl implements UserService { @Override
public int getAge() {
return 0;
} @Override
public String changeName(String name) {
return name.toUpperCase();
} }
package com.rong.test;
import javax.xml.ws.Endpoint;
import com.rong.service.UserServiceImpl;
public class Test {
public static void main(String[] args) {
//第一个参数是发布的URL
//第二个参数是服务接口的实现类对象
Endpoint.publish("http://127.0.0.1:8080/myservice", new UserServiceImpl());
}
}
运行main方法
浏览器输入地址:http://127.0.0.1:8080/myservice?wsdl访问wsdl检验是否开启服务
2.客户端
eclipse创建项目,在项目路径下F:\workplace\myclient\src
运行cmd,执行指令生成客户端代码(可用工具生成)

然后在生成的代码文件夹中删除字节码文件.class文件,只保留java文件
返回eclipse开发工具的客户端项目,刷新项目

测试:
package com.rong.test; import java.net.MalformedURLException;
import java.net.URL; import javax.xml.namespace.QName;
import javax.xml.ws.Service; import com.rjl.service.UserService; public class Test { public static void main(String[] args) throws MalformedURLException { // 客户端使用服务方式一:见上篇
//客户端使用服务方式二
URL url=new URL("http://127.0.0.1:8080/myservice?wsdl");
//第一个参数是服务的URI,服务的命名空间名字
//第二个参数是WSDL发布的服务名
QName serviceName=new QName("http://service.rjl.com/", "UserService");
Service service = Service.create(url, serviceName);
UserService userService = service.getPort(UserService.class);
System.out.println(userService.changeName("rjl and kobe!"));
}
}

WebService(三)的更多相关文章
- webService 三要素
WebService(jax-ws)三要素 SOAP: 基于HTTP协议,采用XML格式,用来传递信息的格式. WSDL: 用来描述如何访问具体的服务.(相当于说明书) UDDI: 用户自己可以按UD ...
- Maven搭建webService (三) 创建客户端---使用Apache CXF方式实现
package test; import net.cc.web.server.HelloWorld; import org.apache.cxf.jaxws.JaxWsProxyFactoryBean ...
- webservice三要素
1. 2. 3.
- php中调用WebService接口
一.背景 调用第三方短信提供商的WebService接口. 二.介绍 1.WebService三要素: SOAP(Simple Object Access Protocol) 用来描述传递信息的格式 ...
- Webservice服务创建、调用笔记
引言 以前使用windows服务,于是学习并记录下来:windows服务的创建.安装.调试全过程及引发的后续学习.现如今需要用到webservice,对此感觉到很困惑.经过几天的学习.查阅资料,终于大 ...
- webservice入门(1)
前段时间学习了webservice的用法,虽然只是一些简单的用法,但是如果久了还是会忘记的,所以将学到了记录下来. 一:schema和http协议. 1.schema约束: schema规范中: . ...
- Unity3d请求webservice
我们在对接第三方sdk时,第三方sdk通常会以一个webservice接口的形式供我们来调用.而这些接口会以提供我们get,post,soap等协议来进行访问.get,post方法相信大家都比较熟悉了 ...
- 【WebService】WebService学习笔记
WebService三要素 WebService三要素SOAP(Simple Object Access Protocol).WSDL(WebServicesDescriptionLanguage). ...
- WebService案例入门(基础篇)
[版权申明:本文系作者原创,转载请注明出处] 文章出处:http://blog.csdn.net/sdksdk0/article/details/52106690 作者:朱培 ID:sdksdk0 邮 ...
- WebService学习-第一弹
一:WebService简介(1)简介----百度百科(注意标识的重点) Web service是一个平台独立的,低耦合的,自包含的.基于可编程的web的应用程序,可使用开放的XML(标准通用标记语言 ...
随机推荐
- 关于Xshell无法连接本地虚拟机的问题
近期想搭建一个测试用的集群,但是! 刚开始搭第一台虚拟机就出现问题了,Xshell无法连接到虚拟机! 然后我更改了/etc/sysconfig/network-scripts/ifcfg-ens33 ...
- 树莓派3B+简单入门
刚刚入手一个树莓派3B+,树莓派板子.3.5寸电阻触摸屏.16G内存卡.外壳电源等一系列配件一共花了360大洋,这东西真不便宜.这里介绍一下系统安装.3.5寸屏幕安装.VNC远程屏幕. 先给大家看一下 ...
- hello,Python
Python无疑是近年来程序语言届最闪亮的明星.2018年Python被TIOBE授予年度编程语言称号,在一月的排行榜中也雄踞第三位,打破了Java C C++长期以来所保持的三强局面 对比笔者以前学 ...
- stm32 IO口八种模式区别
初学STM32,遇到I/O口八种模式的介绍,网上查了一下资料,下面简明写出这几种模式的区别,有不对的地方请大家多多指正! 上拉输入模式:区别在于没有输入信号的时候默认输入高电平(因为有弱上拉).下拉输 ...
- 最近最少使用算法(LRU)——页面置换
原创 上一篇博客写了先进先出算法(FIFO)——页面置换:http://www.cnblogs.com/chiweiming/p/9058438.html 此篇介绍最近最少使用算法(LRU)——页面置 ...
- 学习Emmet
学习Emmet 在进行Web开发时,就免不了需要编写html文件,如何快速(偷懒^-^)的进行编写html,是个大问题,上网找了一下,发现了一个好东西 ,视频教程可以看下小马技术Emmet爆速开发, ...
- ASP.NET底层与各个组件的初步认识与理解 (转载)
ASP.NET底层的初步认识与理解 最近在国外的网站乱走一通,发现一些比较好的文章,收集整理加于自己的理解,作为笔记形式记录下来,让以后自己有个回忆. ASP.NET是一个非常强大的构建Web应用 ...
- # 20155308 2016-2017-2《Java程序设计》课堂实践项目 5月17日
20155308 2016-2017-2<Java程序设计>课堂实践项目 5/17 本次因为git出现了问题,所以没有按时提交我的代码 问题一 在IDEA中对P145 MathTool.j ...
- 20155332 如何获取新技能+c语言学习调查
如何获取新技能+c语言学习调查 你有什么技能比大多人(超过90%以上)更好? 如果问我有没有什么技能比大多数人,并且是90%的人好,我还真不敢说有,因为世界上有70亿人,要比63亿人做的好才行啊.我也 ...
- 【BZOJ2589】[SPOJ10707]Count on a tree II
[BZOJ2589][SPOJ10707]Count on a tree II 题面 bzoj 题解 这题如果不强制在线就是一个很\(sb\)的莫队了,但是它强制在线啊\(qaq\) 所以我们就用到了 ...