基于语句对等替换的代码转换方法、装置、设备、介质与流程

文档序号:30525817发布日期:2022-06-25 06:53阅读:来源:国知局

技术特征:
1.一种基于语句对等替换的代码转换方法,其特征在于,包括:获取待转换的plsql代码中的待转换语句,所述待转换语句包括第一操作符和第一逻辑语句,所述第一操作符用于对所述第一逻辑语句的逻辑运算结果进行逻辑非操作,所述第一逻辑语句的逻辑运算结果为null;获取所述待转换语句的目标逻辑运算结果;移除所述第一操作符,将所述第一逻辑语句转换成第二逻辑语句,所述第二逻辑语句的逻辑运算结果为所述目标逻辑运算结果;将所述第二逻辑语句替换所述待转换的plsql代码的所述待转换语句,得到目标plsql代码;将所述目标plsql代码转换成目标java代码。2.根据权利要求1所述的基于语句对等替换的代码转换方法,其特征在于,所述第一逻辑语句包括第一操作表达式、第二操作表达式和第二操作符,所述第二操作符用于对所述第一操作表达式的操作结果和所述第二操作表达式的操作结果进行逻辑运算,所述将所述第一逻辑语句转换成第二逻辑语句,包括:生成第三操作符和第四操作符,所述第三操作符用于对所述第一操作表达式的操作结果进行逻辑非操作,所述第四操作符用于对所述第二操作表达式的操作结果进行逻辑非操作;当所述第二操作符为逻辑与操作符,将所述第二操作符变更为逻辑或操作符,或者,当所述第二操作符为逻辑或操作符,将所述第二操作符变更为逻辑与操作符;根据所述第一操作表达式、所述第二操作表达式、所述第二操作符、所述第三操作符、所述第四操作符得到所述第二逻辑语句。3.根据权利要求2所述的基于语句对等替换的代码转换方法,其特征在于,所述根据所述第一操作表达式、所述第二操作表达式、所述第二操作符、所述第三操作符、所述第四操作符得到所述第二逻辑语句,包括:将所述第一操作表达式和所述第三操作符转换成第三操作表达式,所述第三操作表达式的操作结果与所述第一操作表达式的操作结果相反;将所述第二操作表达式和所述第四操作符转换成第四操作表达式,所述第四操作表达式的操作结果与所述第二操作表达式的操作结果相反;将所述第三操作表达式、所述第二操作符和所述第四操作表达式组成所述第二逻辑语句。4.根据权利要求1所述的基于语句对等替换的代码转换方法,其特征在于,所述第一逻辑语句的操作类型为赋值操作,所述将所述第一逻辑语句转换成第二逻辑语句,包括:获取预先设定的赋值包装类;将所述第一逻辑语句转换成归属于所述赋值包装类的所述第二逻辑语句。5.根据权利要求4所述的基于语句对等替换的代码转换方法,其特征在于,所述将所述第一逻辑语句转换成归属于所述赋值包装类的所述第二逻辑语句,包括:从所述第一逻辑语句中确定第五操作表达式,所述第五操作表达式所对应的操作类型为赋值操作;获取所述赋值包装类的描述规则,所述描述规则记载有每种赋值操作在所述赋值包装
类中的描述方式;根据所述描述规则改写所述第五操作表达式,得到归属于所述赋值包装类的第六操作表达式;根据所述第六操作表达式进行逻辑非运算,得到所述第二逻辑语句。6.根据权利要求1至4任意一项所述的基于语句对等替换的代码转换方法,其特征在于,所述第一逻辑语句包括至少两个逻辑子语句,所述将所述第一逻辑语句转换成第二逻辑语句,包括:将每个所述逻辑子语句转换成中间子语句;根据全部的所述中间子语句得到所述第二逻辑语句。7.根据权利要求1所述的基于语句对等替换的代码转换方法,其特征在于,在所述将所述第二逻辑语句替换所述待转换的plsql代码的所述待转换语句之前,所述方法还包括:将所述第二逻辑语句转换成备选java语句;确定所述备选java语句的操作结果为所述目标逻辑运算结果。8.一种基于语句对等替换的代码转换装置,其特征在于,包括:语句获取单元,用于获取待转换的plsql代码中的待转换语句,所述待转换语句包括第一操作符和第一逻辑语句,所述第一操作符用于对所述第一逻辑语句的逻辑运算结果进行逻辑非操作,所述第一逻辑语句的逻辑运算结果为null;结果确定单元,用于获取所述待转换语句的目标逻辑运算结果;语句转换单元,用于移除所述第一操作符,将所述第一逻辑语句转换成第二逻辑语句,所述第二逻辑语句的逻辑运算结果为所述目标逻辑运算结果;语句替换单元,用于将所述第二逻辑语句替换所述待转换的plsql代码的所述待转换语句,得到目标plsql代码;代码转换单元,用于将所述目标plsql代码转换成目标java代码。9.一种电子设备,包括:存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,其特征在于,所述处理器执行所述计算机程序时实现如权利要求1至7中任意一项所述的基于语句对等替换的代码转换方法。10.一种计算机可读存储介质,存储有计算机程序,其特征在于,所述计算机程序用于执行如权利要求1至7中任意一项所述的基于语句对等替换的代码转换方法。

技术总结
本发明属于数据库领域,提供了一种基于语句对等替换的代码转换方法、装置、设备、介质,方法包括:获取待转换的PLSQL代码中包括第一操作符和第一逻辑语句的待转换语句,第一操作符用于进行逻辑非操作,第一逻辑语句的逻辑运算结果为Null;获取待转换语句的目标逻辑运算结果;移除第一操作符,将第一逻辑语句转换成逻辑运算结果为目标逻辑运算结果的第二逻辑语句;将第二逻辑语句替换待转换语句,将得到目标PLSQL代码转换成目标Java代码。根据本实施例的技术方案,当待转换语句中的第一逻辑语句的逻辑运算结果为Null,能够通过第二逻辑语句对待转换语句进行对等替换,确保转换成Java语句后操作逻辑保持不变,确保系统的正常运行。行。行。


技术研发人员:钟加武 温秋明
受保护的技术使用者:中国平安人寿保险股份有限公司
技术研发日:2022.04.07
技术公布日:2022/6/24
当前第2页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1