如何通过Java的Web服务器把DataSet或DataTable数据通过json格式传回给C#的客户端

来源:互联网 发布:云计算前景分析知道 编辑:程序博客网 时间:2024/05/22 13:42

问题的提出:

  目前有一个项目,WebServer使用java开发(支持更多的平台),而客户端使用C#开发(拥有象DevExpress的界面库)。也不想直接使用ASP.net开发,性能和接入性不够好。

  但现在很多情况下又需要通过WebServer获得一个DataSet或DataTable的数据(比如水晶报表需要DataSet,而DevExpress则需要DataSet或DataTable)。

  注:考虑到json与对象的转换关系,而且需要表格的schema并不多,所以之前返回的数据List对应的json维持不变

 

实现方法:

   利用Java及C#均具有的json与对象的转换功能实现,Java在这里充当WebServer的角色

  1、java从数据库中查询多次表获得各个数据表的schema及数据。注:目前使用mybatis,暂时没有办法得到表的元数据(表结构),但可以通过查询的List<Object>中的Object反向解析得到数据表的字段名,字段类型等信息吧?

 

   2、将查询到的表结构及数据封装进json

         class schema

         {

        }

         class DataTable

         {

                 List<schema> schemas_;

                 List<Object> datas_;      

         };

        class DataSet

        {

                HashMap<String, DataTable>

        };

 

3、把DataSet的字段信息以json格式传回给C#的客户端

4、C#的客户端相应的解析得到对应的DataSet,并交给水晶报表或DevExpress使用

原创粉丝点击