webservice基本概念
简介
webservice即web服务,它时一种跨编程语言和跨操作系统平台的远程调用技术
Java中共有三种Webservice规范,分别是JAX-WS(JAX-RPC),JAXM&&SAAJ,JAX-RS 一三用的比较多
webservice三要素:soap wsdl uddi

术语
webservice开发规范
java中共有三种webservice规范
1JAX-WS

2,JAXM&&SAAJ

3,JAX-RS

SOAP协议

SOAP

WSDL说明书

UDDI

webService
WebService学习笔记
1.应用场景:
• 解决企业内部异构系统的整合问题
• 解决一些公共资源的复用问题
2.使用案例(调用QQ接口,查看QQ是否在线)
2.1 调用QQ是否在线服务
准备工作:
在网上找到QQ在线状态的WEB服务,其中:
Endpoint:  http://www.webxml.com.cn/webservices/qqOnlineWebService.asmx
WSDL :  http://www.webxml.com.cn/webservices/qqOnlineWebService.asmx?wsdl
测试实例:
• 首先,打开命令行,定位到java项目所在的src文件下,输入
wsimport -s. http://www.webxml.com.cn/webservices/qqOnlineWebService.asmx?wsdl
编译完成后,会自动生成代码:
此时,我新建了client文件夹,用于测试.
• 在测试之前,在浏览器地址栏输入:http://www.webxml.com.cn/webservices/qqOnlineWebService.asmx?wsdl
页面如下:
此时,只需关注两个地方,
1.<wsdl:service name="qqOnlineWebService">\

  1. <wsdl:portType name="qqOnlineWebServiceSoap">

    在该段分支下的operation为方法的名称.
    • 接着 通过java代码来测试服务

运行java代码:Y代表在线,运行成功.

2.2 天气预报(解决服务出错)

准备工作

Endpoint:  http://www.webxml.com.cn/WebServices/WeatherWebService.asmx

WSDL :  http://www.webxml.com.cn/WebServices/WeatherWebService.asmx?wsdl

测试实例

出错

解决

将网页源代码复制到本地:

在ieda里面新建wsdl文件

将本地的:

<s:element ref="s:schema"/><s:any/>

替换成:

<s:any minOccurs="2" maxOccurs="2"/>

修改完成之后,重新运行cmd命令,将远程服务换成本都服务.

此时代码生成成功.

客户端调用代码:

运行结果:

此时,天气预报接口服务调用成功.

3.通过注解规范化发布接口

3.1 相关注解

• @WebService

• @WebMethod

• @WebResult

• @WebParam

@WebParam和@WebResult 一般贴在方法上,提高可读性

分别贴在对应的位置上:

浏览器打开:

@WebMethod

可以使某个方法不对外开放,@WebMethod(exclude=true)

@WebService注解

可以发布指定的服务,@WebService(endpointInterface = '指定的接口名') -----一般用于实现类上

如:@WebService(endpointInterface = "cn.wjh1832.webservice.IWeatherService")

4.cxf

4.1简介

4.2环境搭建

下载cxf,配置cxf的环境变量.

配置完成后,在cmd命令行输入 wsdl2java 回车,出现以下内容代表安装成功.

4.3CXF发布服务

服务端

步骤:

• 拷jar包

• 写接口,实现类

• 发布服务

• 在浏览器访问 http://localhost:8888/weatherService?wsdl

发布成功

客户端

在命令行输入 wsdl2java -d . http://localhost:8888/weatherService?wsdl

代码生成成功.

客户端调用

4.4 cxf调用网络服务

案例: 以手机归属地查询为例

http://ws.webxml.com.cn/WebServices/MobileCodeWS.asmx?wsdl

客户端步骤与手动发布的步骤一样.

webService

WebService学习笔记

1.应用场景:

  • 解决企业内部异构系统的整合问题
  • 解决一些公共资源的复用问题

2.使用案例(调用QQ接口,查看QQ是否在线)

2.1 调用QQ是否在线服务

准备工作:

在网上找到QQ在线状态的WEB服务,其中:

Endpoint:  http://www.webxml.com.cn/webservices/qqOnlineWebService.asmx

WSDL :  http://www.webxml.com.cn/webservices/qqOnlineWebService.asmx?wsdl

测试实例:

  • 首先,打开命令行,定位到java项目所在的src文件下,输入

    wsimport -s. http://www.webxml.com.cn/webservices/qqOnlineWebService.asmx?wsdl

编译完成后,会自动生成代码:

此时,我新建了client文件夹,用于测试.

  • 在测试之前,在浏览器地址栏输入:http://www.webxml.com.cn/webservices/qqOnlineWebService.asmx?wsdl

页面如下:

此时,只需关注两个地方,

1.<wsdl:service name="qqOnlineWebService">

  1. <wsdl:portType name="qqOnlineWebServiceSoap">

在该段分支下的operation为方法的名称.

  • 接着 通过java代码来测试服务

运行java代码:

imagewiuwieng

Y代表在线,运行成功.

2.2 天气预报(解决服务出错)

准备工作

          Endpoint:  <http://www.webxml.com.cn/WebServices/WeatherWebService.asmx>

****WSDL :  http://www.webxml.com.cn/WebServices/WeatherWebService.asmx?wsdl

测试实例

出错

解决

将网页源代码复制到本地:

在ieda里面新建wsdl文件

将本地的:

            <s:element ref="s:schema"/><s:any/>

替换成:

        <s:any minOccurs="2" maxOccurs="2"/>

修改完成之后,重新运行cmd命令,将远程服务换成本都服务.

此时代码生成成功.

客户端调用代码:

运行结果:

此时,天气预报接口服务调用成功.

明白了Java-WebService原理对你web开发真的太重要了相关推荐

  1. java webservice用户验证_使用java webservice的.net4.0 web app需要Usernametoken身份验证

    我是使用.net 4.0 VS2010的新手.我需要使用java web服务并发送usernametoken自定义身份验证来访问服务,这是我很容易在VS2005中使用WSE2.0,那么在net 4.0 ...

  2. java 写一个商店_Java Web开发之基于Session的购物商店实现方法

    本文实例讲述了Java Web开发之基于Session的购物商店实现方法.分享给大家供大家参考,具体如下: package cn.com.shopping; import java.io.IOExce ...

  3. 蓝旭前端开发:GITtomcat+nginx原理移动端web 开发

    蓝旭前端开发:GIT+移动端 web 开发 目录 一.==GIT== 1.1 ==Git与GitHub== 1.2 ==GitHub注册和Git的下载安装== 二.==Git的使用== 2.1 ==本 ...

  4. java和Mysql数据一致性_java web开发中数据一致性的问题

    在java web开发中,数据存储介质有如下几种数据库(rdms,nosql) 缓存系统(redis,memcached,ehcache) java内部数据结构(map,list) 文件存储(fast ...

  5. java excel 边框_【web开发】☆★之利用POI操作Excel表格系列教程【9】单元格边框处理...

    [web开发]☆★之利用POI操作Excel表格系列教程[9]单元格边框处理 package csg.xiaoye.poidemo; import java.io.FileOutputStream; ...

  6. java启动mysq服务_Java Web开发——MySQL数据库的安装与配置

    MySQL是一个关系型数据库管理系统,由瑞典MySQL AB 公司开发,目前属于 Oracle 旗下产品.MySQL 是最流行的关系型数据库管理系统之一,在 WEB 应用方面,MySQL是最好的 RD ...

  7. java dispatcher详解_Java Web开发详解:RequestDispatcher接口

    12.6.1  RequestDispatcher接口 RequestDispatcher 对象由 Servlet 容器创建,用于封装一个由路径所标识的服务器资源.利用RequestDispatche ...

  8. java中有地址吗_java web开发中各类地址的写法

    这个其实有三个原则: 1.如果这个地址是给服务器用的,该地址的起点就是从该web应用开始写. 2.如果这个地址是给浏览器用的,该地址的起点就是从该网站开始写. 3.所有的地址都以"/&quo ...

  9. Java学习笔记-全栈-web开发-02-css必备基础

    说明: 如果您是后端开发人员,实际上这章只需要知道个大概即可,一般来说美化工作不需要我们完成. 但更多情况下,我们得能看懂这些css是如何美化的,美化的结果是什么. 因此,后端开发人员不必深入学习. ...

最新文章

  1. tensorflow随笔-非线性回归
  2. javaScript实现E-mail 验证
  3. PC顶级后次世代和主流次世代图像引擎技术规格表
  4. nohup java 运行main_在linux下利用nohup来后台运行java程序
  5. 蓝桥练习 之 单词个数统计
  6. 计算机学院军训条幅,最新各大高校欢迎新生横幅,确认过眼神,师兄师姐Skr人才。...
  7. volatile c语言_C语言系列文章之volatile
  8. 所需即所获:像 IDE 一样使用 vim
  9. JTAG接口针脚定义及含义
  10. Java Keytool工具简介
  11. 词干提取(stemming)和词形还原(lemmatization)
  12. 实现翻页或查询后保持复选框勾选状态
  13. V-REP 建立简洁模型教程
  14. 奥的斯电梯服务器自动呼梯,奥的斯MCS系统电梯轿厢内呼梯保密设置
  15. P1055 [NOIP2008 普及组] ISBN 号码 每一本正式出版的图书都有一个ISBN号码与之对应,ISBN码包括99位数字、11位识别码和33位分隔符,其规定格式如x-xxx-xxxxx
  16. 算法分析与设计实验一
  17. django官方文档——django中的用户认证
  18. 手把手教你安装telnet(离线方式+在线方式)
  19. 【用户运营】用这4个最佳客户服务策略,减少客户流失率
  20. LQFP144封装尺寸图

热门文章

  1. 情人节送什么礼物给男朋友合适?送男朋友最实用的礼物
  2. PHP面试开场白,教师资格证面试开场白怎么说
  3. 【拉斯观测组联翻】川原砾 Sword Art Online 27 Unital Ring Ⅵ
  4. Rocky 9.1操作系统实现zabbix6.0的安装部署实战
  5. platform 总线驱动练习
  6. 台式计算机鼠标,鼠标 台式电脑知识 ZOL术语
  7. 蚁群算法 python_Python蚁群算法实现
  8. DirectoryIndex
  9. 【2023秋招】10月19日华为通用软件开发三道题
  10. PPT基础(二十九)添加备注和批注