微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

webservice实现服务器端与android通信

大多数的通信方案有 JSON,web service。我们最终确认使用的是web serviceJ2EE服务器端)+ ksoapandroid客户端),原因是我们没有PHP方面的知识积累,选用Java至少我们还懂一些。可是在之后的实作里碰到很大的困难,一是网上没有找到详细的一步步从头开始资料;二是,网上提供的例子很简单,我记得是一个做加法的例子;实际中,经常要涉及到结构参数的回传和调用;三是没有找到服务器端+android客户端的完整例子;都是割裂的,要嘛讲的是服务器端,要嘛讲的是客户端。现在把我们的经验系统的分享给大家。

 

         先介绍一下服务器端开发环境是 myeclipse 9.0

1,建立 web service工程,如下所示

 

2,填写工程配置,注意红圈部分,一定要选“JAX-WS;点击“确认”,就生成了基本的工程。

 

3,这里我们做些准备工作,实现一个客户端启动时自动检测版本信息的例子:

      1)建立一个 bean,注意这是个POJO,需要有setXXX,getXXX,否则将不能正常工作。

publicclass Clientversion { 

      // Fields 

private IntegeroldestVersion; //目前可兼容的最老版本

      currentVersion; //当前最新版本

private StringdownloadUrl1; //最新版客户端下载地址1

downloadUrl2; //最新版客户端下载地址2

releaseNote//关于最新版的描述 

// Constructors 

/** default constructor */

public Clientversion() {

      

/** full constructor */

public Clientversion(Integer oldestVersion,Integer currentVersion,

                  String downloadUrl1,String downloadUrl2,String releaseNote) {

            this.oldestVersion = oldestVersion;

currentVersion = currentVersion;

downloadUrl1 = downloadUrl1;

downloadUrl2 = downloadUrl2;

releaseNote = releaseNote;

// Propertyaccessors 

public Integer getoldestVersion() {

returnoldestVersion;

void setoldestVersion(Integer oldestVersion) {

public Integer getCurrentVersion() {

currentVersion;

      }

 

void setCurrentVersion(Integer currentVersion) {

public String getDownloadUrl1() {

downloadUrl1;

void setDownloadUrl1(String downloadUrl1) {

public String getDownloadUrl2() {

downloadUrl2;

void setDownloadUrl2(String downloadUrl2) {

public String getReleaseNote() {

releaseNote;

void setReleaseNote(String releaseNote) {

}

 2)设一个类,定义一个接口函数

RequestHandler.java

 package cn.stepbystep.service;

 import cn.stepbystep.bean.Clientversion;

class RequestHandler {

//

       public Clientversion requestVersion(int version) //客户端调用的接口,传入client端的参数

      {

            Clientversion info = new Clientversion();

           

            //构造一个版本信息,之后回传给客户端

            info.setCurrentVersion(103);

            info.setoldestVersion(100);

            info.setDownloadUrl1("http://www.smallke.net");

            info.setDownloadUrl1("http://www.smallke.net/promote.html");

            info.setReleaseNote("这是个例子");

return info;

      }    

 

3)最后的工程的结构是这样的:

 

4生成 web service接口

(1)    在快捷工具栏选择“New Web Service

 

(2)    出现一个对话框,做出图示选择,然后点“next

 

(3) 选择需要实现web service的接口

注意,在红圈处输入刚才我们实现的类;其他部分内容自动产生,不需要做任何修改;然后点击“finish

 

     (4) 再次查看工程,会发现多了一个文件,这是web service自动生成

 

同时会在web.xml里发现多几行配置

 

 

5,到此,服务器端的工作就完成了。让我们来简单测试。

 (1)在工程上右键,弹出菜单,选择 Debug as -> Myeclipse server application

 

(2) 选择一个应用容器,我选的是 MyEclipse自带tomcat

 

(3) 工程起来后,自动切到认主页

 

(4) 在地址栏上输入这个地址,就会看到以下页面;到此证明服务器端是OK了。

转载自:http://www.voidcn.com/article/p-zkjmsirq-bde.html

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 [email protected] 举报,一经查实,本站将立刻删除。

相关推荐