哈哈!你不知道,你的每个结果,都是字符串吗?无论你用什么格式。所以,字符串是最简单的方式。当然,你可以自己加上约定的格式,就成了xml的选择了。如果你要某个语言的格式,那就是json或者对象的序列化了。你自己选择吧! 我如果是页面调用,首选json,否则直接String,我宁可自己封装解析。

解决方案 »

  1.   


    如果性能无任何区别的话。单纯从发布web servces方 和使用web servces方,应该传递对象是比较简单的吧。因为如果是xml还需要自己封装,封装过去后,对方还要解析,而且还需要知道双方的约定。我觉得直接返回对象,应该还是比较好的。
      

  2.   


    直接返回对象的话那web service就不能跨语言了。如果你用java调用一个用.NET写的web service怎么办?
      

  3.   

    呵呵,楼上回去再好好输理下基本知识.返回什么和跨语言没有什么联系.因为最后都被解析成xml.  只要你按照正确的规范构造wsdl文件,就可以.我只是觉得返回对象发布和使用双方更简单点.不用去程序的解析XML. 
      

  4.   


    对象不是二进制么?JAVA和.Net的对象序列化机制肯定不同吧,那当然不是跨语言咯。
      

  5.   

    之所以用soap封装XML传输数据不就是考虑了跨语言吗?
      

  6.   

    1、直接返回对象是不能跨语言和平台的,需要xml和json这些文本形式的数据描述完成
    2、在数据传输和对象转换的性能方面json明显优于xml
      

  7.   

    可能我的意思大家没有听清楚。直接返回对象,然后用工具(比如xfire,cxf等)生成wsdl。这样wsdl文件里会把一个简单对象描述清楚。比如发布这样一个方法返回对象public User getUserObject(){
     User u = new User();
     u.setName("ccc");
     u.setPassword("1122");
     return u;
    }返回xmlpublic String getUserString() {
       User u = new User();
       User u = new User();
       u.setName("ccc");
       u.setPassword("1122");
       return u.toString();//在user对象重写toString()方法。}
    以上两种都是可以实现的
      

  8.   

    JSON网络传输数据优于XML。这个是肯定的,但是还是要面临接受方和发布方对象的转换。
    从设计和易用上考虑,那种更合适呢?如果是AJAX调用web services肯定  json好。
      

  9.   

    其实两种方法效率不会相差很多。
    直接返回对象的话,由框架帮你把对象转换为XML String,
    直接返回String的话,得由你把String再转换为对象。
    传输的本质是不变的,即文本而非二进制。建议用第一种,方便开发。