[发明专利]一种基于数据库访问的跨语言环境数据交互方法有效
申请号: | 201710813793.2 | 申请日: | 2017-09-11 |
公开(公告)号: | CN107665243B | 公开(公告)日: | 2021-03-09 |
发明(设计)人: | 汪俊锋;张巧云;戴平;刘罡 | 申请(专利权)人: | 安徽慧视金瞳科技有限公司 |
主分类号: | G06F16/25 | 分类号: | G06F16/25;G06F16/22;G06F9/54 |
代理公司: | 合肥天明专利事务所(普通合伙) 34115 | 代理人: | 金凯 |
地址: | 230000 安徽省合肥市巢湖市*** | 国省代码: | 安徽;34 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 基于 数据库 访问 语言 环境 数据 交互 方法 | ||
本发明公开了一种基于数据库访问的跨语言环境数据交互方法,属于进程间数据交互技术领域,包括:基于MySql数据库,创建数据库表Data和Result,并基于不同的语言执行环境分别生成生产者进程J和消费者进程P;生产者进程J往数据库表Data中写入需要处理的数据M并读取数据库表Result中的处理结果;消费者进程P对Data表中的数据M进行处理并将处理结果写入数据库表Result中。本发明基于语言执行环境均支持的数据库访问接口,实现不同语言执行环境进程之间的通信,具有通用性强的特点。由于编程语言在不同操作系统下的执行环境,都会有一致的数据库访问接口,具有扩展性强的特点。
技术领域
本发明涉及进程间数据交互技术领域,特别涉及一种基于数据库访问的跨语言环境数据交互方法。
背景技术
进程间的数据交互是指:不同进程之间交换或传播信息。进程之间进行数据交互,可以完成进程间的同步或协作等操作。由于不同的编程语言所在的执行环境不同,所以不同语言实现的程序执行后在不同的进程之中。使用不同编程语言实现的程序之间需要交互,就必须进行进程间的数据交换。
进程具有独立的用户空间,不同进程的用户空间是不能直接互相访问的。进程直接进行数据交互时,通常通过双方进程都可以直接访问的外部空间进行。
现有的进程间数据交互方法主要通过进程间通信实现。进程间通信主要指通过管道、信号量、消息队列等操作系统的内核功能来实现。但是,这些方法存在的缺陷在于:需要与具体操作系统的特性密切相关,扩展性较差。还有一些方法通过磁盘上的第三方文件进行进程间的数据交互,但是这种方法存在的缺陷在于:需要自己定义交互数据的格式和访问接口,通用性较差。
发明内容
本发明的目的在于提供一种基于数据库访问的跨语言环境数据交互方法,以提高跨语言环境数据交互的普适性。
为实现以上目的,本发明采用的技术方案为:提供一种基于数据库访问的跨语言环境数据交互方法,包括:
S1、基于MySql数据库,创建数据库表Data和Result,并基于不同的语言执行环境分别生成生产者进程J和消费者进程P;
S2、所述生产者进程J往数据库表Data中写入需要处理的数据M并读取数据库表Result中的处理结果;
S3、所述消费者进程P对Data表中的数据M进行处理并将处理结果写入数据库表Result中。
其中,在所述步骤S3之后,还包括:
S4、所述消费者进程P监控数据库表Data,当有新写入的数据M时,从数据库表Data中读出进行处理,并将处理结果写入数据库表Result中。
其中,所述的步骤S1,具体包括:
基于MySql数据库,创建所述数据库表Data和Result,;
基于Java语言环境,使用Java代码生成所述生产者进程J;
基于Python语言环境,使用Python代码生成所述消费者进程P。
其中,所述的步骤S2,具体包括:
所述生产者进程J获取需要处理的数据存入数据库表Data中,并等待消费者进程P的处理结果;
在无数据需要处理时,向所述消费者进程P发送结束指令。
其中,所述的步骤S3,具体包括:
所述消费者进程P从数据库表Data中获取需要处理的数据M进行处理,得到处理结果;
所述消费者进程P将处理结果存入数据库表Result中以供所述生产者进程J查看;
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于安徽慧视金瞳科技有限公司,未经安徽慧视金瞳科技有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201710813793.2/2.html,转载请声明来源钻瓜专利网。