首先说一下,为什么取名叫菜鸟之webservice,由于本人技术真的不咋滴,写博客仅仅是为了对所学知识的总结.webservice对于我来说一直都是高大上的感觉,一个java web和javase都没有正规学过的人,什么叫服务端程序都是 一头雾水的人.上来就想写webserviceserver端的程序真心感觉无从下手,但是这不能成为借口,经过几天的摸索,尽管java se与java ee还是不怎么懂,但是眼下已经能搭建简单的webservice了.以下就给大家分享一下,搭建webserviceserver端程序的过程.

(一)简单介绍webservice:

什么是WebServices?

它是一种构建应用程序的普遍模型,能够在不论什么支持网络通信的操作系统中实施执行;它是一种新的web应用程序分支,是自包括、自描写叙述、模块化的应用,能够公布、定位、通过web调用。Web
Service是一个应用组件,它逻辑性的为其它应用程序提供数据与服务.各应用程序通过网络协议和规定的一些标准数据格式(Http,XML,Soap)来訪问Web
Service,通过Web Service内部运行得到所需结果.Web Service能够运行从简单的请求到复杂商务处理的不论什么功能。

一旦部署以后,其它Web
Service应用程序能够发现并调用它部署的服务。

关键的技术和规则

在构建和使用Web Service时,主要用到下面几个关键的技术和规则:

1.XML:描写叙述数据的标准方法.

2.SOAP:表示信息交换的协议.

3.WSDL:Web服务描写叙述语言.

4.UDDI:通用描写叙述、发现与集成,它是一种独立于平台的。基于XML语言的用于在互联网上描写叙述商务的协议。

XML

可扩展的标记语言(XML)是Web service平台中表示数据的基本格式。除了易于建立和易于分析外,XML基本的长处在于它既是平台无关的。又是厂商无关的。无关性是比技术优越性更重要的:软件厂商是不会选择一个由竞争对手所发明的技术的。

   SOAP

SOAP是web service的标准通信协议,SOAP为simple objectaccess protocoll的缩写,简单对象訪问协议. 它是一种标准化的传输消息的XML消息格式。

   WSDL

WSDL的全称是web serviceDescription Language,是一种基于XML格式的关于web服务的描写叙述语言。其主要目的在于web service的提供者将自己的web服务的全部相关内容,如所提供的服务的传输方式,服务方法接口,接口參数,服务路径等。生成对应的全然文档,公布给使用者。使用者可以通过这个WSDL文档,创建对应的SOAP请求消息,通过HTTP传递给webservice提供者。web服务在完毕服务请求后,将SOAP返回消息传回请求者,服务请求者再依据WSDL文档将SOAP返回消息解析成自己可以理解的内容。

UDDI

将web service进行UDDI注冊公布,UDDI是一种创建注冊表服务的规范,以便大家将自己的web service进行注冊公布供使用者查找.然而当服务提供者想将自己的web service向全世界公布,以便外部找到其服务时,那么服务提供者能够将自己的web service注冊到对应的UDDI商用注冊站点。眼下全球有IBM等4家UDDI商用注冊站点。由于WSDL文件里已经给定了web service的地址URI,外部能够直接通过WSDL提供的URI进行对应的web
service调用。所以UDDI并非一个必需的web service组件,服务方全然能够不进行UDDI的注冊。

声明一下:UDDI这个我没实用到,也不知道是干嘛的与怎么用,哈哈,假设有读者知道的话,能够告诉我奥,大家共同学习进步.

以下就来搭建属于我们自己的webservice:

第一步,新建一个webserviceproject:



watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQvYW5kcm9pZF9qaWFuZ2p1bg==/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70/gravity/Center" alt="">

新建之后,给自己的webservice起个project名字,这里我给大家的演示样例是:OurWebserviceOne

Jax-WS是Java1.6中才有的,新的WebService模式,基于注解的方式配置WebService,非常类似Asp中的WebService,难度已经比Xfire方式的配置减少了非常多.

REST(JAX-RS)

用的比較少

Xfire(已过时)

配置比較繁琐

建立好之后的project文件夹结构例如以下图:

watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQvYW5kcm9pZF9qaWFuZ2p1bg==/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70/gravity/Center" alt="">

第二步,写自己业务逻辑代码:

watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQvYW5kcm9pZF9qaWFuZ2p1bg==/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70/gravity/Center" alt="">

第三步:公布webservice

到此WS公布完毕,接下来配置TomCat

在弹出的窗口中依次展开 MyEclipse->Servers –>Tomcat

选择项目右键点击

启动TomCat,.然后部署我们的webservice:

watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQvYW5kcm9pZF9qaWFuZ2p1bg==/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70/gravity/Center" alt="">

部署完毕:

打开浏览器測试:

好了,到了这一步,我们的webservice已经搭建完毕,也就是我们Android应用开发中的server端程序,至于具体怎样在Androidclient调用webservice提供的服务,我近期抽出时间写个具体的.

读者能够先行參考一下两个帖子:

调用webservice的步骤:http://www.ubento.cn/thread-4126-1-1.html

调用webservice的代码实现:http://www.ubento.cn/thread-4159-1-1.html

转载请注明出处:http://blog.csdn.net/android_jiangjun/article/details/24512425

菜鸟之webservice(一) 服务端搭建的更多相关文章

  1. Centos 6.5 pptpd服务端搭建过程

    首先检测有没有启用ppp和tun cat /dev/ppp cat /dev/net/tun 如果显示是这样的 cat: /dev/ppp: No such device or address cat ...

  2. Apereo CAS Server服务端搭建教程

    不说废话了,直接看搭建过程吧. 首先到下载源码,https://github.com/apereo/cas-overlay-template/tree/4.2 附上地址,本次版本为4.2,下载源码后如 ...

  3. react 项目实战(一)创建项目 及 服务端搭建

    1.安装 React社区提供了众多的脚手架,这里我们使用官方推荐的create-react-app. //安装脚手架 npm install -g create-react-app //生成并运行项目 ...

  4. FTP服务端 FTP服务端搭建教程

    FTP服务端搭建教程如下:一.需要准备以下工具:1.微型FTP服务端.2.服务器管理工具二.操作步骤:1.下载微型FTP服务端.(站长工具包可下载:http://zzgjb.iis7.com/ )2. ...

  5. webservice调用服务端数据时给soapenv:Envelope 添加自定义的命名空间

    最近做第三方接口,服务端需要 <soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/&qu ...

  6. node服务端搭建学习笔记

    咳咳,终于迈出这一步了...这篇文章将是边学边写的真正笔记...用于mark下学习过程中的点滴~ 开篇先把我学习参考的文章来源给出,以表示对前人的尊敬: https://github.com/nswb ...

  7. centos6.5 svn服务端搭建

    一.前言 Subversion是一个免费的开源的版本管理系统,它是作为CVS(Concurrent Versions System)的取代品出现的.本文简单介绍了Subversion在centos上的 ...

  8. git分布式的理解----简单服务端搭建

    Git是分布式的,并没有服务端跟客户端之分,所谓的服务端安装的其实也是git.Git支持四种协议,file,ssh,git,http.ssh是使用较多的,下面使用ssh搭建一个免密码登录的服务端. 1 ...

  9. CAS单点登录学习(一):服务端搭建

    下载先在网上下载cas-server-3.5.2,将里面的cas-server-webapp-3.5.2.war放到tomcat的webapps目录下. https设置cas单点登默认使用的是http ...

随机推荐

  1. 小巧的ssh客户端

    所用到的知识点 os 模块 文件操作 循环 字符串操作 字典 #!/use/bin/python #coding=utf8 import os print '\033[1;32;40m welcome ...

  2. Swagger 生成 PHP API 接口文档

    Swagger 生成 PHP API 接口文档 Lumen微服务生成Swagger文档 1.概况 有同学反馈写几十个接口文档需要两天的工作量, 随着多部门之间的协作越来越频繁, 维护成本越来越高, 文 ...

  3. HDU 2222 Keywords Search AC自己主动机入门题

    单词统计的题目,给出一些单词,统计有多少单词在一个文本中出现,最经典的入门题了. AC自己主动机的基础: 1 Trie. 以这个数据结构为基础的,只是添加一个fail指针和构造fail的函数 2 KM ...

  4. xcode 及 MAC 经常使用快捷键

    郝萌主倾心贡献,尊重作者的劳动成果,请勿转载. 假设文章对您有所帮助,欢迎给作者捐赠,支持郝萌主,捐赠数额任意.重在心意^_^ 我要捐赠: 点击捐赠 Cocos2d-X源代码下载:点我传送 黑苹果键盘 ...

  5. tomcatserver管理界面username和password忘记

    tomcatserverhttp://localhost:8080/ 这样訪问,点击Manager App后要求输入username和password才干进入管理应用界面 我忘记了username和p ...

  6. Android实战技巧之三十七:图片的Base64编解码

    通经常使用Base64这样的编解码方式将二进制数据转换成可见的字符串格式,就是我们常说的大串.10块钱一串的那种,^_^. Android的android.util包下直接提供了一个功能十分完备的Ba ...

  7. mongodb官网文档阅读笔记:与写性能相关的几个因素

    Indexes 和全部db一样,索引肯定都会引起写性能的下降,mongodb也没啥特别的,相对索引对读性能的提示,这些消耗通常是能够接受的,所以该加入的索引还是要加入.当然须要慎重一些.扯点远的,以前 ...

  8. Google代码规范工具Cpplint的使用

    Cpplint是一个python脚本,Google使用它作为自己的C++代码规范检查工具. 假设你所在的公司也使用Google C++代码规范,那么你有必要了解下Cpplint. 以下说一下Cppli ...

  9. Ext4.1 chart的使用

    var reportsPanel = Ext.create('Ext.panel.Panel', { id:'reportsPanel',    layout: 'fit',    tbar: [{ ...

  10. rest_framework-序列化-总结完结篇

    #rest_framework 序列化 from rest_framework import serializers #serilizers.Serializer serializers.ModelS ...