1.(c# JAVA 基于DataTable通信)

第一次发博文,文笔不好请大家见谅。

 

最近在开发一套基于元模型的软件基础框架,在开发语言方面 服务端采用java ,客户端为C# winform程序。Csharp 和java通信基于的基础类型有int,string,bool等,用过.net的同学都应该感受过DataTable和DataSet的强大,可以直接转换数据表,可以直接绑定数据源控件等。好处很多但是有个问题java 不支持DataSet。如果想实现C# 和java 基于dataSet的通信需要做以下几件事

1〉  JAVA端封装DataSet对象

2〉  java端DataSet对象和C#端的DataSet对象约定好一个序列化和反序列化规则,分别实现序列化和反序列化。

如下图所示

 

1.    蓝色线表示客户端发起任务请求,如果参数类型为DataSet则需要按照和服务端一样的序列化规则进行序列化而后调用服务端的服务接口进行访问服务端。

2.  服务端接受到客户端的请求后,因为知道客户端有传入DataSet则需要把传入的字节流按按照和客户端一样的反序列化规则生成DataSet对象供服务端处理。

3.  服务端处理完后(绿色线)需要返回一个DataSet对象,需要按照和客户端一样的序列化规则进行序列化后进行返回

4.  客户端接受到返回结果后,因为知道服务端返回的是DataSet则需要把返回的字节流按照和服务端一样的的反序列化规则生成DataSet对象供客户端处理。通信完成

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值