掌桥专利:专业的专利平台
掌桥专利
首页

桩代码自动生成和同步的方法、装置、设备及介质

文献发布时间:2023-06-19 18:37:28


桩代码自动生成和同步的方法、装置、设备及介质

技术领域

本发明涉及互联网技术领域,尤其涉及一种桩代码自动生成和同步的方法、装置、电子设备及计算机可读存储介质。

背景技术

现有的桩代码的生成和同步都是需要人工参与实现的,且配置桩代码的生成环境的复杂度高,以及同步桩代码的步骤繁琐,存在在对桩代码进行生成和同步的过程中,因需手动重复搭建桩代码的生成环境和手动设置桩代码的同步流程,及其容易出现因手动步骤过多而导致的搭建步骤或设置步骤的遗漏或错乱,进而导致的桩代码的生成或同步错误,提高了用户生成和同步桩代码的使用成本。

发明内容

本发明的主要目的在于提供一种桩代码自动生成和同步的方法、装置、电子设备及计算机可读存储介质,旨在如何解决现有的人工生成和同步桩代码存在的用户生成和同步桩代码的使用成本高的技术问题。

为实现上述目的,本发明提供一种桩代码自动生成和同步的方法,所述桩代码自动生成和同步的方法包括以下步骤:

通过webhook事件拉取proto仓库中的更新文件;

基于docker镜像将所述更新文件转换成桩代码后,将所述桩代码推送至gitlab仓库中;

通过同步插件将所述gitlab仓库中的所述桩代码同步到目标php项目中。

可选地,所述通过webhook事件拉取proto仓库中的更新文件的步骤之前,还包括:

将建立有所述docker镜像的预设项目部署到公网中,以通过所述公网与所述gitlab仓库互访,以及,将配置有所述proto仓库的路径的pb仓库所处的协议文件推送到所述gitlab仓库中,以通过所述gitlab仓库对所述proto仓库进行访问。

可选地,所述将建立由所述docker镜像的预设项目部署到公网中,以通过所述公网与所述gitlab仓库互访的步骤之前,还包括:

在预设项目中建立所述docker镜像,以及在所述预设项目中新建web目录后,在所述web目录中创建index.php脚本,并将所述index.php脚本对应的脚本内容修改为监听所述gitlab仓库的所述webhook事件。

可选地,所述将配置有所述proto仓库的路径的pb仓库所处的协议文件推送到所述gitlab仓库中,以通过所述gitlab仓库对所述proto仓库进行访问的步骤之后,还包括:

将所述gitlab仓库的webhook地址配置为所述公网的域名。

可选地,所述通过webhook事件拉取proto仓库中的更新文件的步骤之前,还包括:

通过所述webhook事件监听到所述proto仓库中存在所述更新文件后,执行所述通过webhook事件拉取proto仓库中的更新文件的步骤。

可选地,所述基于docker镜像将所述更新文件转换成桩代码后,将所述桩代码推送至gitlab仓库中的步骤包括:

通过所述域名将所述更新文件发送至所述docker镜像中,基于所述docker镜像中的转换脚本将所述更新文件转换为所述桩代码;

通过所述域名将所述桩代码推送至所述gitlab仓库中。

可选地,所述通过同步插件将所述gitlab仓库中的所述桩代码同步到目标php项目中的步骤之前,还包括:

在所述目标php项目中引入所述同步插件后,在所述目标php项目中编写配置有桩代码地址的composer.json文件。

本发明还提供一种桩代码自动生成和同步装置,所述桩代码自动生成和同步装置包括:

拉取模块,用于通过webhook事件拉取proto仓库中的更新文件;

转换模块,用于基于docker镜像将所述更新文件转换成桩代码后,将所述桩代码推送至gitlab仓库中;

同步模块,用于通过同步插件将所述gitlab仓库中的所述桩代码同步到目标php项目中。

此外,为实现上述目的,本发明还提供一种电子设备,包括如上所述的桩代码自动生成和同步装置、存储器、处理器及存储在存储器上并可在处理器上运行的计算机处理程序,所述处理器执行所述计算机处理程序时实现上述桩代码自动生成和同步的方法的步骤。

此外,为实现上述目的,本发明还提供一种计算机可读存储介质,所述计算机可读存储介质上存储有计算机程序,所述计算机程序被处理器执行时实现上述桩代码自动生成和同步的方法的步骤。

本发明实施例提出一种桩代码自动生成和同步的方法、装置、设备及介质,本发明通过webhook事件拉取proto仓库中的更新文件,自动触发生成桩代码的生成操作,实现在proto仓库存在更新文件的第一时刻立即触发桩代码的生成操作,避免人工触发桩代码的生成操作存在的触发不及时的情况,基于docker镜像将更新文件转换成桩代码后,将桩代码推送至gitlab仓库中,实现在无需重复搭建桩代码的生成环境的情况下,直接基于docker镜像中的转换脚本将更新文件自动转换成桩代码,避免了基于人工搭建的桩代码生成环境存在的不便捷性,通过同步插件将gitlab仓库中的桩代码同步到目标php项目中,实现自动同步最新的桩代码到相应的项目中,避免了需手动配置桩代码的同步脚本路径存在的繁琐性,减少了手动流程,极大程度的降低了用户生成和同步桩代码的使用成本。

附图说明

图1是本发明实施例方案涉及的硬件运行环境的终端结构示意图;

图2为本发明桩代码自动生成和同步的方法中一实施例的流程示意图;

图3为本发明中预设项目、协议文件和目标php项目之间的交互流程示意图;

图4为本发明桩代码自动生成和同步装置的模块示意图。

本发明目的的实现、功能特点及优点将结合实施例,参照附图做进一步说明。

具体实施方式

应当理解,此处所描述的具体实施例仅仅用以解释本发明,并不用于限定本发明。

如图1所示,图1是本发明实施例方案涉及的硬件运行环境的终端结构示意图。

本发明实施例电子设备可以是PC,也可以是智能手机、平板电脑、电子书阅读器、便携计算机等具有显示功能的可移动式终端设备。

如图1所示,该终端可以包括:处理器1001,例如CPU,网络接口1004,用户接口1003,存储器1005,通信总线1002。其中,通信总线1002用于实现这些租金之间的连接通信。用户接口1003可以包括显示屏(Display)、输入单元比如键盘(Keyboard),可选用户接口1003还可以包括标准的有线接口、无线接口。网络接口1004可选的可以包括标准的有线接口、无线接口(如WI-FI接口)。存储器1005可以是高速RAM存储器,也可以是稳定的存储器(non-volatile memory),例如磁盘存储器。存储器1005可选的还可以是独立于前述处理器1001的存储装置。

可选地,电子设备还可以包括摄像头、RF(Radio Frequency,射频)电路,传感器、音频电路、WiFi模块等等。其中,传感器比如光传感器、运动传感器以及其他传感器。具体地,光传感器可包括环境光传感器及接近传感器,其中,环境光传感器可根据环境光线的明暗来调节显示屏的亮度,接近传感器可在移动终端移动到耳边时,关闭显示屏和/或背光。作为运动传感器的一种,重力加速度传感器可检测各个方向上(一般为三轴)加速度的大小,静止时可检测出重力的大小及方向,可用于识别移动终端姿态的应用(比如横竖屏切换、相关游戏、磁力计姿态校准)、振动识别相关功能(比如计步器、敲击)等;当然,移动终端还可配置陀螺仪、气压计、湿度计、温度计、红外线传感器等其他传感器,在此不再赘述。

本领域技术人员可以理解,图1中示出的电子设备结构并不构成对电子设备的限定,可以包括比图示更多或更少的部件,或者组合某些部件,或者不同的部件布置。

如图1所示,作为一种计算机存储介质的存储器1005中可以包括操作系统、网络通信模块、用户接口模块以及计算机程序。

在图1所示的终端中,网络接口1004主要用于连接后台服务器,与后台服务器进行数据通信;用户接口1003主要用于连接客户端(用户端),与客户端进行数据通信;而处理器1001可以用于调用存储器1005中存储的计算机程序,并执行以下操作:

通过webhook事件拉取proto仓库中的更新文件;

基于docker镜像将所述更新文件转换成桩代码后,将所述桩代码推送至gitlab仓库中;

通过同步插件将所述gitlab仓库中的所述桩代码同步到目标php项目中。

进一步地,处理器1001可以调用存储器1005中存储的计算机程序,还执行以下操作:

通过webhook事件拉取proto仓库中的更新文件的步骤之前,将建立有所述docker镜像的预设项目部署到公网中,以通过所述公网与所述gitlab仓库互访,以及,将配置有所述proto仓库的路径的pb仓库所处的协议文件推送到所述gitlab仓库中,以通过所述gitlab仓库对所述proto仓库进行访问。

进一步地,处理器1001可以调用存储器1005中存储的计算机程序,还执行以下操作:

将建立由所述docker镜像的预设项目部署到公网中,以通过所述公网与所述gitlab仓库互访的步骤之前,在预设项目中建立所述docker镜像,以及在所述预设项目中新建web目录后,在所述web目录中创建index.php脚本,并将所述index.php脚本对应的脚本内容修改为监听所述gitlab仓库的所述webhook事件。

进一步地,处理器1001可以调用存储器1005中存储的计算机程序,还执行以下操作:

将配置有所述proto仓库的路径的pb仓库所处的协议文件推送到所述gitlab仓库中,以通过所述gitlab仓库对所述proto仓库进行访问的步骤之后,将所述gitlab仓库的webhook地址配置为所述公网的域名。

进一步地,处理器1001可以调用存储器1005中存储的计算机程序,还执行以下操作:

通过webhook事件拉取proto仓库中的更新文件的步骤之前,通过所述webhook事件监听到所述proto仓库中存在所述更新文件后,执行所述通过webhook事件拉取proto仓库中的更新文件的步骤。

进一步地,处理器1001可以调用存储器1005中存储的计算机程序,还执行以下操作:

基于docker镜像将所述更新文件转换成桩代码后,将所述桩代码推送至gitlab仓库中的步骤包括:通过所述域名将所述更新文件发送至所述docker镜像中,基于所述docker镜像中的转换脚本将所述更新文件转换为所述桩代码;

通过所述域名将所述桩代码推送至所述gitlab仓库中。

进一步地,处理器1001可以调用存储器1005中存储的计算机程序,还执行以下操作:

通过同步插件将所述gitlab仓库中的所述桩代码同步到目标php项目中的步骤之前,在所述目标php项目中引入所述同步插件后,在所述目标php项目中编写配置有桩代码地址的composer.json文件。

参照图2,本发明第一实施例提供一种桩代码自动生成和同步的方法,所述桩代码自动生成和同步的方法包括以下步骤:

步骤S10,通过webhook事件拉取proto仓库中的更新文件。

需要说明的是,在本实施例中,更新文件指的是proto仓库中新增的proto文件。

现有的关于proto仓库中新增proto文件的拉取都是基于人工实现的,即新增proto文件需用户手动对proto仓库进行浏览后,手动在proto仓库中选取新增proto文件,将手动选取的proto文件拉到前期搭建的桩代码的生成环境中,以进行将proto文件转换成对应的桩代码,而在上述流程步骤中,人工操作的步骤繁多,及其容易出错。

基于上述情况,本实施例基于webhook事件具有的在资源更新时提供更新的数据功能,提出通过gitlab仓库中的webhook事件自动拉取proto仓库中的更新文件,实现对proto仓库中新增proto文件的自动拉取,进而避免现有的人工操作存在的拉取错误的情况。

可选地,步骤S10中通过webhook事件拉取proto仓库中的更新文件的步骤之前,还包括:

步骤A,将建立有所述docker镜像的预设项目部署到公网中,以通过所述公网与所述gitlab仓库互访,以及,将配置有所述proto仓库的路径的pb仓库所处的协议文件推送到所述gitlab仓库中,以通过所述gitlab仓库对所述proto仓库进行访问。

需要说明的是,之所以能够通过webhook事件对更新文件进行拉取,是因为gitlab仓库和proto仓库之间建立了连接关系,具体为,前期开发人员需将建立由docker镜像的预设项目部署到公网中,实现通过公网和gitlab仓库互相访问,便于通过gitlab仓库对与被推送到gitlab仓库中的其他文件进行监听,同时,通过在pb仓库中配置proto仓库的路径,即在需要自动生成桩代码的pb仓库的pb仓库根目录上配置php-grpc-gen.json文件,该php-grpc-gen.json文件表示了存在更新文件的相对路径,当配置好pb仓库根目录后,因为pb仓库是协议文件的仓库,以此此时将配置好的pb仓库对应的协议文件推送至gitlab仓库中,使得gitlab仓库能够通过协议文件中配置有相对路径的pb仓库对proto仓库进行访问,以实现对更新文件的及时获悉和拉取。

php-grpc-gen.json文件配置的相对路径的代码内容如下:

{

"paths":[

"./micro-custom-success/*.proto"

]

}

其中,根据实际网络环境,预设项目还可部署到局域网中。

可选的,步骤A中将建立由所述docker镜像的预设项目部署到公网中,以通过所述公网与所述gitlab仓库互访的步骤之前,还包括:

步骤B1,在预设项目中建立所述docker镜像,以及在所述预设项目中新建web目录后,在所述web目录中创建index.php脚本,并将所述index.php脚本对应的脚本内容修改为监听所述gitlab仓库的所述webhook事件。

具体地,在本实施例中,使用phpstorm新建预设项目后,在预设项目的目录中新建Dockerfile文件,在Dockerfile文件中导入chrisdowson/php-grpc-gen:1.30.0作为docker镜像后,再于Dockerfile文件同级的目录下新建web目录并创建index.php脚本后,将index.php脚本的内容修改为能够启动http服务并监听gitlab仓库的webhook事件后,将预设项目部署到公网中,并通过该公网对应的域名提供http服务,在预设项目具备监听gitlab仓库的webhook事件的功能下,将该预设项目部署到公网,通过公网对gitlab仓库的webhook事件进行监听,而gitlab仓库又能够实施对proto仓库进行访问,以此预设项目能够通过gitlab仓库获取proto仓库中的新增proto文件(即更新文件),实现更新文件的自动实时获取,避免现有的需人工进行获取的不便捷性。

Dockerfile文件的代码内容如下:

FROM chrisdowson/php-grpc-gen:1.30.0

#替换源

COPY etc/sources.list/etc/apt/

RUN apt-get clean && apt-get update

RUN apt-get -yqq install git php7.3-cli vim

ADD . /webser/www/php-grpc-gen

#同步nginx配置

COPY nginx/conf.d /etc/nginx

COPY scripts/start.sh /start.sh

COPY ssh/ /root/.ssh/

WORKDIR /webser/www/php-grpc-gen

RUN chmod +x /start.sh && chmod 600 /root/.sh/id_rsa

EXPOSE 80

CMD ["/start.sh"]

可选地,步骤A中将配置有所述proto仓库的路径的pb仓库所处的协议文件推送到所述gitlab仓库中,以通过所述gitlab仓库对所述proto仓库进行访问的步骤之后,还包括:

步骤B2,将所述gitlab仓库的webhook地址配置为所述公网的域名。

具体地,将配置有相对路径的pb仓库对应的协议文件推送到gitlab仓库后,需对应将gitlab仓库的webhook地址配置为部署了预设项目的公网的域名,以通过相同的域名建立gitlab仓库和公网之间的对应连接。

可选地,步骤S10中通过webhook事件拉取proto仓库中的更新文件的步骤之前,还包括:

步骤C,通过所述webhook事件监听到所述proto仓库中存在所述更新文件后,执行所述通过webhook事件拉取proto仓库中的更新文件的步骤。

具体地,由上述可知,预设项目中配置了监听gitlab仓库的webhook事件的功能,而gitlab仓库中又被推送了配置有相对路径的pb仓库对应的协议文件,因此,预设项目能够通过监听gitlab仓库的webhook事件获悉proto仓库中是否存在更新文件。当预设项目通过 webhook事件监听到proto仓库中存在更新文件时,此时通过监听到的webhook事件对更新文件进行拉取,实现自动化的更新文件检测流程,避免人工检测存在的纰漏。

步骤S20,基于docker镜像将所述更新文件转换成桩代码后,将所述桩代码推送至gitlab仓库中。

现有的将更新文件转换成桩代码是需要用户事先配置用于生成桩代码的生成环境的,因此存在每转化一次桩代码,就需要用户手动配置一次生成环境,且配置生成环境的步骤及其繁琐且复杂,使得桩代码的转换时间较长。且对用户的使用要求度较高。

基于上述问题,本实施例提出建立docker镜像,通过将生成桩代码所对应的操作系统的所有文件和对应目录结构制作成docker镜像,实现在需要进行桩代码的转化时,直接调用docker镜像中对应的转换脚本将更新文件转换成桩代码,简化了桩代码转换的流程步骤,实现了桩代码的自动转换,避免了现有进行以此桩代码的转换时需对应进行一次生成环境的搭建的复杂性和不便捷性。

将更新文件转换成桩代码,并将桩代码推送至gitlab仓库的代码内容如下:

runt (cmd: 'git config --global user. email ""');

run( cmd:'git config --global user. name "桩代码自动生成"');

$server = new \React\Http\HttpServer(function(ServerRequestInterface$request) {

$response_data = ['success'=>true, 'data'>nu1l, 'message'=>'', 'code'=>200];

if($request->geBody()){

try{

//设置gitlab仓库的访问口令

$temp_path = "/root";

$skip_branch = [ 'T1', 'master', 'R1' );

$post_repos = getRepository($request);

//T0D0 构建失败给对应的同事发邮件

$email = getEmail($request);

$branch = getBranch($request);

if (!in_array($branch, $sk1p_branch) && $branch != "") {

$clone_url = $post_ repos['git_ssh_url'];

$repos_name = $post_repos['name' ];

$repas_path_name = $temp_path ."/" . $repos_name;

if (!file_exists($repos_path,_nane)) {

//克隆代码到/tmp目录下

run( cmd "git clone " . $clome._url . " " . $repos_path_name);

}

//进入目录切换到对应的分支

run( cmd: "cd $repos_path_name&&git pull && git checkout $branch&&gitpull");

//读取项目根目录的配置文件

if (file_exists( filename: $repos_path_name . '/php-grpc-gen.json')){

Sconfig = json_decode(file_get_contents( filename: $repos_path_name .'/php-grpc-gen.json'), associativer: true);

if (isset($config['paths']) && is_array($config[ 'paths'])) {

foreach ($config['paths'] as $path) {

//生成桩代码

run( cmd: "cd $repos_path_name&&protoc --proto_path=. --php_ out=./php --grpc_out= ./php --plugin=protoc-gen-grpc=/opt/grpc/bin/grpc

}

//推送至gitlab仓库

run( cmd: "cd $repos_path_name && git add .&& git commit -m '自动生成桩代码'&& git push");

}

}

可选地,步骤S20中基于docker镜像将所述更新文件转换成桩代码后,将所述桩代码推送至gitlab仓库中的步骤包括:

步骤S201,通过所述域名将所述更新文件发送至所述docker镜像中,基于所述docker镜像中的转换脚本将所述更新文件转换为所述桩代码;

步骤S202,通过所述域名将所述桩代码推送至所述gitlab仓库中。

具体的,当通过webhook事件拉取到更新文件后,因为webhook事件是在gitlab仓库中的,因此此时可以基于gitlab仓库前期设置的webhook地址与公网进行互访,将webhook事件推送到域名中,通过域名达到部署在公网中预设项目,使得预设项目中的docker镜像能够基于接收到的webhook事件调取对应的转换脚本,并通过该转换脚本将webhook事件中的更新文件转换成对应的桩代码,实现桩代码的自动转换。

在docker镜像将接收的更新文件对应转换成桩代码后,此时的预设项目会将转换所得的桩代码通过公网推送至与webhook地址与该公网的域名相同的gitlab仓库中,以便后续桩代码的同步。

步骤S30,通过同步插件将所述gitlab仓库中的所述桩代码同步到目标php项目中。

现有的将桩代码同步到目标php项目是需要用户手动将桩代码拷贝到目标php项目,并手动修改对应的文件将桩代码引入才能完成对桩代码的同步,存在手动配置的繁琐性,极大的增加了用户同步桩代码的使用成本。

基于上述问题,本实施例提出通过在目标php项目中引入同步插件,通过同步插件实现自动同步桩代码至对应的php项目中,降低现有的同步桩代码的复杂度和提高同步桩代码的自动化程度。

可选地,步骤S30中通过同步插件将所述gitlab仓库中的所述桩代码同步到目标php项目中的步骤之前,还包括:

步骤S301,在所述目标php项目中引入所述同步插件后,在所述目标php项目中编写配置有桩代码地址的composer.json文件。

具体地,在使用composer在目标php项目中引入桩代码的同步插件后,在目标php项目中的composer.json文件中进行桩代码地址的配置,即对桩代码对应的更新文件所处的proto仓库地址和分支进行配置,以便目标php项目能够在gitlab仓库中找到需对应引入的桩代码,在找到对应的桩代码后,此时执行composer命令会自动运行同步插件,以实现将桩代码同步到目标php项目中,实现桩代码的自动同步,避免了需手动配置桩代码的同步脚本路径存在的繁琐性,减少了手动流程,极大程度的降低了用户同步桩代码的使用成本。

composer.json文件中的脚本信息内容如下:

"scripts": {

"post - install-cmd": [

"yii\\composer\\Installer: :postInstall"

],

"post-create- project-cmd": [

"yii\\composer\\Installer::postCreateProject",

"yii\\composer\\Installer::postInstall"

],

"post -autoload-dump": [

"ycg\\syncStub\\SyncStub: : sync"

],

"post- package-install": [

"ycg\\syncStub\\SyncStub::sync"

]

},

在本实施例中,通过webhook事件拉取proto仓库中的更新文件,自动触发生成桩代码的生成操作,实现在proto仓库存在更新文件的第一时刻立即触发桩代码的生成操作,避免人工触发桩代码的生成操作存在的触发不及时的情况,基于docker镜像将更新文件转换成桩代码后,将桩代码推送至gitlab仓库中,实现在无需重复搭建桩代码的生成环境的情况下,直接基于docker镜像中的转换脚本将更新文件自动转换成桩代码,避免了基于人工搭建的桩代码生成环境存在的不便捷性,通过同步插件将gitlab仓库中的桩代码同步到目标php项目中,实现自动同步最新的桩代码到相应的项目中,避免了需手动配置桩代码的同步脚本路径存在的繁琐性,减少了手动流程,极大程度的降低了用户生成和同步桩代码的使用成本。

实施例

参照图3所示,当通过webhook事件拉取到更新文件后,因为webhook事件是在gitlab仓库中的,因此此时可以基于gitlab仓库前期设置的webhook地址与公网进行互访,将webhook事件推送到域名中,通过域名达到部署在公网中预设项目,使得预设项目中的docker镜像能够基于接收到的webhook事件调取对应的转换脚本,并通过该转换脚本将webhook事件中的更新文件转换成对应的桩代码,预设项目会将转换所得的桩代码通过公网推送至与webhook地址与该公网的域名相同的gitlab仓库中,目标php项目根据对应的地址在gitlab仓库中找到对应的桩代码,将桩代码同步到目标php项目中,实现桩代码的自动同步。

参照图4,本发明还提供一种桩代码自动生成和同步装置,所述桩代码自动生成和同步装置包括:

拉取模块10,用于通过webhook事件拉取proto仓库中的更新文件;

转换模块20,用于基于docker镜像将所述更新文件转换成桩代码后,将所述桩代码推送至gitlab仓库中;

同步模块30,用于通过同步插件将所述gitlab仓库中的所述桩代码同步到目标php项目中。

进一步地,所述转换模块20,还用于:

将建立有所述docker镜像的预设项目部署到公网中,以通过所述公网与所述gitlab仓库互访,以及,将配置有所述proto仓库的路径的pb仓库所处的协议文件推送到所述gitlab仓库中,以通过所述gitlab仓库对所述proto仓库进行访问。

进一步地,所述转换模块20,还用于:

在预设项目中建立所述docker镜像,以及在所述预设项目中新建web目录后,在所述web目录中创建index.php脚本,并将所述index.php脚本对应的脚本内容修改为监听所述gitlab仓库的所述webhook事件。

进一步地,所述转换模块20,还用于:

将所述gitlab仓库的webhook地址配置为所述公网的域名。

进一步地,所述拉取模块10,还用于:

通过所述webhook事件监听到所述proto仓库中存在所述更新文件后,执行所述通过webhook事件拉取proto仓库中的更新文件的步骤。

进一步地,所述转换模块20,还用于:

通过所述域名将所述更新文件发送至所述docker镜像中,基于所述docker镜像中的转换脚本将所述更新文件转换为所述桩代码;

通过所述域名将所述桩代码推送至所述gitlab仓库中。

进一步地,所述同步模块30,还用于:

在所述目标php项目中引入所述同步插件后,在所述目标php项目中编写配置有桩代码地址的composer.json文件。

此外,本发明实施例还提出一种电子设备,所述电子设备包括如上所述的桩代码自动生成和同步装置、存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,所述处理器执行所述计算机程序时实现上述桩代码自动生成和同步的方法的步骤。

此外,本发明还提出一种计算机可读存储介质,所述计算机可读存储介质上存储有计算机程序,所述计算机程序被处理器执行时实现上述桩代码自动生成和同步的方法的步骤。

需要说明的是,在本文中,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者系统不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者系统所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括该要素的过程、方法、物品或者系统中还存在另外的相同要素。

上述本发明实施例序号仅仅为了描述,不代表实施例的优劣。

通过以上的实施方式的描述,本领域的技术人员可以清楚地了解到上述实施例方法可借助软件加必需的通用硬件平台的方式来实现,当然也可以通过硬件,但很多情况下前者是更佳的实施方式。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品存储在如上所述的一个存储介质(如ROM/RAM、磁碟、光盘)中,包括若干指令用以使得一台终端设备(可以是手机,计算机,服务器,空调器,或者网络设备等)执行本发明各个实施例所述的方法。

以上仅为本发明的优选实施例,并非因此限制本发明的专利范围,凡是利用本发明说明书及附图内容所作的等效结构或等效流程变换,或直接或间接运用在其他相关的技术领域,均同理包括在本发明的专利保护范围内。

技术分类

06120115633630