转自:http://www.cnblogs.com/fengyishou/archive/2009/02/27/1399281.html

关于web服务的有关基础知识,看了基本书,但是不敢在这里乱说,因为毕竟没有深究,说出来就被人笑话了。利用vs200X IDE是可以很方便的创建web服务的,并且可以添加web引用方便的调用。

以上这些就不在说了,来说这次的想法吧。

由于实体的方便性(个人认为,欢迎众神拍砖),我希望能在与web服务的通讯过程中继续使用,我在创建web服务时,同样使用了类库,创建相应实体,但是我又想到,这样的对象类型,如果你不暴露出去,调用方是不知道的,那有没有办法解决呢?在园内我看到了众神的文章,发现有一个较为简单的办法,但是不知道是不是最优的办法。

实体类中还是想通常一样,封装属性,就类似于这样:

public class book
{
    public int ID
    {
        set;
        get;
    }
    public string Name
    {
        set;
        get;
    }
}

在webservice中引用这个类库,引用命名空间。编写相应的方法。其实这都不是重点,重点是在代码中需要加入:

using System.Xml.Serialization;
[XmlInclude(typeof(book))]

这样,调用方就可以识别你的实体类型了。哦对了,在编写实体类时,在类前加上

[Serializable]

不过,是不是必须的我并没有试,一会试试。

这里需要说的是,在调用方进行调用时,使用类似:

localhost.Service1 ls = new localhost.Service1();
localhost.book lb = new localhost.book();
lb.Name = TextBox1.Text;
ls.add(lb);

应当注意,这里并不是直接调用了实体类,而是通过代理类进行调用,所以还是有区别的。

我还是有一些问题没有想好,比如,如果JAVA要掉我的服务,那么这个实体类就不能被识别了吧?可是我又不想去直接传递诸如 int i,string s,等一大串的参数,不知道园内众神有没有能帮忙的。

还有,在.NET中我的查询结果可以直接返回dataset,那么如果JAVA调用呢?list可以么?说需要通用,那么就是数组了吧,或者是XML,应当如何写呢?如果我将结果放到泛型对象中,然后做成json的形式发过去呢?但是.NET这里就不方便了啊,恩,需要想一想了。

*******************经过思考(进行文章内容补充)*********************

进行了尝试,可以将dataset转换成XML格式进行发送,这样理论上无论是什么调用方主要可以操作XML文件就可以了,如果在试的过程中,java的报我wsdl有错误,额.....还没有解决。

关于参数嘛,数组,感觉还是数组最好,属于简单类型,应该都认识,不过还需要尝试。

将Model实体类对象作为WebService接口参数(转)的更多相关文章

  1. java 获取实体类对象属性值的方法

    在java中我们要获得实体类对象的属性,一般情况是将实体类中的属性私有化,然后再对外提供get()与set()方法,然后再获取实体类对象的属性的时候先把对象new出来,再用变量名.get()的方法得到 ...

  2. Mybaits 源码解析 (八)----- 全网最详细,没有之一:结果集 ResultSet 自动映射成实体类对象(上篇)

    上一篇文章我们已经将SQL发送到了数据库,并返回了ResultSet,接下来就是将结果集 ResultSet 自动映射成实体类对象.这样使用者就无需再手动操作结果集,并将数据填充到实体类对象中.这可大 ...

  3. NSDictionary转化为实体类对象

    方法一: 使用objective-c NSObject自带的方法 setValuesForKeysWithDictionary:dict 作用是: 如果NSDictionary中的key和实体类对象的 ...

  4. 我写了一个java实体类,implements了Serializable接口,然后我如何让serialversionUID自动生成

    写了一个java实体类,implements了Serializable接口,让serialversionUID自动生成方法: 1.点击类旁边的警告符号: 2.选择Add generated seria ...

  5. 使用myeclipse创建带注解的model实体类

    1.先新建JPA项目: 如果没有就点击左下角的Show All Wizards. 点两次Next后,点击Finish即可,中间不用任何操作 (点第二次Next后会出现连接到所在数据库,先不管)     ...

  6. @NamedEntityGraphs --JPA按实体类对象参数中的字段排序问题得解决方法

    JPA按实体类对象参数中的字段排序问题得解决方法@Entity @Table(name="complaints") @NamedEntityGraphs({ @NamedEntit ...

  7. Hibernate_day02--课程安排_主键生成策略_对实体类crud操作_实体类对象状态

    Hibernate_day02 上节内容 今天内容 实体类编写规则 Hibernate主键生成策略 实体类操作 对实体类crud操作 添加操作 根据id查询 修改操作 删除操作 实体类对象状态(概念) ...

  8. 使用fastjson 进行jsonObject转实体类对象

    使用fastjson 进行jsonObject转实体类对象   1 <dependency> 2 <groupId>com.alibaba</groupId> 3 ...

  9. solr搜索结果转实体类对象的两种方法

    问题:就是把从solr搜索出来的结果转成我们想要的实体类对象,很常用的情景. 1.使用@Field注解 @Field这个注解放到实体类的属性[字段]中,例如下面 public class User{ ...

随机推荐

  1. C#分布式缓存Couchbase

    C#分布式缓存Couchbase使用 一.简介 目前C#业界使用得最多的 Cache 系统主要是 Memcached和 Redis. 这两个 Cache 系统可以说是比较成熟的解决方案,也是很多系统当 ...

  2. React Native开发的通讯录应用

    React Native开发的通讯录应用(使用JavaScript开发原生iOS应用,vczero) 0.前言: 项目地址:https://github.com/vczero/React-Native ...

  3. 使用Eclipse+Maven+Jetty构建Java Web开发环境(几个教程综合集成2014发行)

    工作需要使用Jetty由于web集装箱,得知Eclipse+Maven+Jetty该组合是非常好的,因此,要在网上找了很多教程,但不写或多或少特定的或过时的内容而导致最终的配置失败,易于配置为未来的同 ...

  4. .Net中把图片等文件放入DLL中,并在程序中引用

    原文:.Net中把图片等文件放入DLL中,并在程序中引用 [摘要] 有时我们需要隐藏程序中的一些资源,比如游戏,过关后才能看到图片,那么图片就必须隐藏起来,否则不用玩这个游戏就可以看到你的图片了,呵呵 ...

  5. 关于访问MSMQ远端私有队列的一点经验

    这里应该将私有队列称做"专用队列"好像更贴切一些了,O(∩_∩)O 可以访问远程主机的MSMQ的私有队列的,这个是毋庸置疑的,但需要说明的是不能通过代码创建私有队列,关于这一点,我 ...

  6. JavaScript模块化编程之require.js与sea.js

    为什么要模块化:当今,网站以不再是一个简单的页面,JavaScript也不再是做一些简单的脚本验证,随着WEB.20时代到来,前端工程师面临的必将是越来越庞大的JavaScript代码,越来越复杂的内 ...

  7. ArcGIS网络分析之Silverlight客户端最近设施点分析(四)

    原文:ArcGIS网络分析之Silverlight客户端最近设施点分析(四) 在上一篇中说了如何实现最近路径分析,本篇将讨论如何实现最近设施点分析. 最近设施点分析实际上和路径分析有些相识,实现的过程 ...

  8. 【高德地图API】从零开始学高德JS API(六)——坐标转换

    原文:[高德地图API]从零开始学高德JS API(六)——坐标转换 摘要:如何从GPS转到谷歌?如何从百度转到高德?这些都是小case.我们还提供,如何将基站cell_id转换为GPS坐标? --- ...

  9. Swift中文教程(一)--欢迎来到Swift的世界

    原文:Swift中文教程(一)--欢迎来到Swift的世界 Apple凌晨时在WWDC发布了Swift编程语言,语法简介我很喜欢,市面上没有完整的中文教程,我在ibooks里面下载了英文原版,现在开始 ...

  10. LeetCode——Spiral Matrix

    Given a matrix of m x n elements (m rows, n columns), return all elements of the matrix in spiral or ...