[发明专利]一种通用的客户端与服务端数据绑定的方法有效

专利信息
申请号: 201210419623.3 申请日: 2012-10-26
公开(公告)号: CN103793384B 公开(公告)日: 2017-09-19
发明(设计)人: 李海刚;应海金;沈杰;蔡姗姗 申请(专利权)人: 上海宝信软件股份有限公司
主分类号: G06F17/30 分类号: G06F17/30;H04L29/06
代理公司: 上海汉声知识产权代理有限公司31236 代理人: 郭国中
地址: 201203 上海市浦*** 国省代码: 上海;31
权利要求书: 查看更多 说明书: 查看更多
摘要: 发明提供一种通用的客户端与服务端数据绑定的方法,它通过设计通用的数据交换格式及绑定接口,将客户端画面数据直接与服务端数据对象绑定,实现客户端画面与服务端进程数据双向交换。本发明设计的数据格式具有很高的通用性,适合各种控件数据结构,特别是Grid、Chart等数据长度可变的结构;同时具有较高的效率,格式简单、清晰,易于人的阅读与书写。本方法对画面中常用控件如TextBox、Lable、Grid、Chart等控件在服务端和客户端分别进行封装,降低了应用开发难度,提高了前后开发效率。本发明解决了服务端C++进程与客户端.net进程的数据交换问题,使得应用可将大量的业务逻辑放在服务端实现,方便与服务端其它进程间的信息交换,同时减轻客户端画面进程负荷,提高画面反应速度。
搜索关键词: 一种 通用 客户端 服务端 数据 绑定 方法
【主权项】:
一种通用的客户端与服务端数据绑定的方法,其特征在于,以画面逻辑区域为数据处理基本单元,通过客户端和服务端数据绑定接口、以及客户端和服务端数据交换格式,将客户端.NET控件直接与服务端C++控件绑定,使客户端与服务端之间双向交换进程数据,所述客户端和服务端数据绑定接口包括客户端向服务端注册数据结构接口、客户端画面激活及未激活接口、客户端向服务端发送数据接口、服务端向客户端发送数据接口,所述客户端和服务端数据交换格式用于客户端.NET数据对象和服务端C++数据对象之间的数据转换,客户端和服务端数据交换格式包括描述数据结构的数据头和存放实际数据的数据体,数据头包含了控件属性、类型、结构信息,服务端及客户端根据数据头信息,实现对数据体的编码及解码;客户端通过所述客户端向服务端注册数据结构接口,将画面逻辑区域包含的控件对象数据结构组织为客户端和服务端数据交换格式向服务端注册,服务端根据数据结构解析及编码控件实际数据;服务端通过所述客户端画面激活及未激活接口,根据当前客户端的状态决定是否发送数据,即仅在客户端激活状态时才交换数据;客户端通过所述客户端向服务端发送数据接口,主动将画面逻辑区域包括的控件数据组织为客户端和服务端数据交换格式送给服务端,服务端根据数据结构解析数据并进一步作业务处理;服务端通过所述服务端向客户端发送数据接口,根据业务逻辑组织数据并发送给客户端,客户端将客户端和服务端数据交换格式数据解析为控件对象数据并刷新数据;所述客户端和服务端数据交换格式支持基本数据、以及多层次结构的复杂数据;客户端对.NET控件进一步封装,增加控件serverKey属性及数据类型信息,其中:控件serverKey属性用于建立控件与画面逻辑区域的所属关系;数据类型信息指定了实际数据类型;服务端相应地根据.NET控件数据特性封装C++数据类型,使得.NET控件与C++数据对象一一对应;所述客户端和服务端数据交换格式,满足如下要求:(1)编程语言独立于客户端和服务端的编程语言,且客户端、服务端采用不同的编程语言;(2)采用文本格式;(3)支持具有固定格式的控件,且支持多层次数据结构;(4)采用数据结构的描述信息与实际数据相分离的手段,将数据格式分为数据头区域与数据体区域;在数据头区域中存放的信息包括标记关键字、属性名称、属性类型;在数据体区域中存放的信息包括标记关键字、实际数据;数据头与体之间以标记关键字互相对应,实现了带有自描述信息的交换数据格式;当客户端画面逻辑区域初始化时,客户端将所有控件数据结构组织为所述客户端和服务端数据交换格式,通过socket通讯方式发送至服务端,相应服务端处理单元保存数据结构信息,以便后续实际数据的交换;当客户端画面逻辑区域内的按钮控制被触发时,自动收集该区域内所有控件数据,组织为所述客户端和服务端数据交换格式,通过socket方式发送至服务端数据处理单元;服务端处理单元解析所述客户端和服务端数据交换格式数据,并转换为C++控件对象,再进行相应业务逻辑处理;服务端处理单元进行相关业务处理后,将C++控件对象数据组织为所述客户端和服务端数据交换格式,通过socket方式发送至客户端画面逻辑区域;客户端画面逻辑区域解析通用交换格式数据,并刷新.NET控件;客户端画面分为一个或多个画面逻辑区域,每个控件必定要关联至一个画面逻辑区域;通过对.NET控件的封装新增了逻辑区域属性,指定控件属于哪个画面逻辑区域;服务端根据.NET控件的操作特性封装了C++控件数据类型,方便对控件数据的处理;结构数据描述定义了两个控件的数据结构:txt1控件包含四个属性,包括名称、text值、背景色及前景色;grid1控件包含Grid属性,其中Grid属性为复杂数据类型,表示该Grid控件包括4列数据,分别定义了每列的数据类型;实际数据描述包含了两个控件的数据,其中grid1控件包含了3行数据;所述客户端向服务端注册数据结构接口实现了客户端画面逻辑区域内所有控件向服务端注册数据结构的功能,具体步骤如下:客户端画面初始化打开时,画面逻辑区域分别收集关联控件数据结构信息,包括属性名称、数据类型信息;NET数据交换格式编码解析组件将逻辑区域控件数据结构信息组织为客户端服务端数据交换格式,即结构数据描述格式;客户端绑定接口实现组件获取formKey信息调用客户端向服务端注册数据结构接口;其中,formKey为逻辑区域所在画面ID,客户端SOCKET通讯组件将信息发送至服务端;服务端SOCKET通讯组件接收客户端数据;服务端C++数据交换格式编码解析组件将客户端结构数据描述数据转换为C++对象;服务端绑定接口实现组件根据serverKey关键字调用相应数据处理单元;所述画面激活及未激活接口实现了客户端画面状态通知服务端功能,具体步骤如下:客户端画面切换为当前画面或从当前画面切换为后台画面;客户端绑定接口实现组件获取clientKey和formKey信息调用客户端画面激活接口或客户端画面未激活接口;clientKey为客户端ID;客户端SOCKET通讯组件将信息发送至服务端;服务端SOCKET通讯组件接收客户端数据;服务端绑定接口实现组件根据客户机clientKey及画面formKey记录画面状态信息,并根据serverKey调用相应服务端处理单元;服务端数据处理单元调用相应接口;所述服务端向客户端发送数据接口实现了服务端数据处理单元将C++控件对象数据组织为通用交换格式发送至服务端功能,具体步骤如下:服务端数据处理单元根据业务逻辑组织控件数据;服务端C++数据交换格式编码解码组件将C++数据转换为实际数据描述格式;服务端绑定接口实现组件根据需要调用服务端向客户端发送数据接口;服务端SOCKET通讯组件将信息发送至客户端;客户端SOCKET通讯组件接收服务端数据;客户端.NET数据交换格式编码解析组件将实际数据描述格式数据组织为控件数据;客户端绑定接口实现组件根据serverKey设置相应逻辑区域内控件数据。
下载完整专利技术内容需要扣除积分,VIP会员可以免费下载。

该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于上海宝信软件股份有限公司,未经上海宝信软件股份有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服

本文链接:http://www.vipzhuanli.com/patent/201210419623.3/,转载请声明来源钻瓜专利网。

×

专利文献下载

说明:

1、专利原文基于中国国家知识产权局专利说明书;

2、支持发明专利 、实用新型专利、外观设计专利(升级中);

3、专利数据每周两次同步更新,支持Adobe PDF格式;

4、内容包括专利技术的结构示意图流程工艺图技术构造图

5、已全新升级为极速版,下载速度显著提升!欢迎使用!

请您登陆后,进行下载,点击【登陆】 【注册】

关于我们 寻求报道 投稿须知 广告合作 版权声明 网站地图 友情链接 企业标识 联系我们

钻瓜专利网在线咨询

周一至周五 9:00-18:00

咨询在线客服咨询在线客服
tel code back_top