The invention provides a method for realizing dynamic conditional java code using the Oracle dual table, the invention uses the Oracle dual table to determine the dynamic conditions of the Java code, the Java code satisfies the conditions of dynamic configuration and dynamic execution to improve the judgment logic module, flexibility and maintainability. The invention has the advantages that can be flexibly configured condition judgment logic module, and do not care about the conditions in the code analysis and dynamic judgment, especially in the judgment condition according to the demand changes frequently, only in the configuration of the conditions for revision, without having to modify the code, you can the new conditions in force.
【技术实现步骤摘要】
本专利技术涉及一种计算机技术,适用于那些有较多执行分支的java应用,而且这些 执行分支的条件需要灵活配置的一种用Oracle的dual表实现java代码中动态条件判断 的方法。因用到Oracle的dual表,所以本专利技术只适用于数据库为Oracle的java数据库应用。
技术介绍
目前,java应用中一些灵活可配置条件的判断是要专门的解析类去实现的,针对 条件中不同的运算符和关系符,解析类中必须要有相应解析代码,如果新增一些运算符和 关系符,对应要扩充解析类,可维护性不高,且实现复杂,给开发和测试都带来了不便。Oracle的dual表是一个虚拟表,用来查那些不属于实际表里的内容,用来构成 select的语法规则。我们可以将逻辑复杂的条件语句放在sql语句的where子句中进行判断,查询虚 拟表dual即可执行获得条件判断结果,创新地利用dual表来解决了 java动态执行条件判 断代码的不便性。
技术实现思路
本专利技术的目的是提供一种在java代码中动态执行配置好的条件代码的方法。本专利技术的目的是按以下方式实现的,本专利技术创新利地用Oracle的dual表实现了 java动态条件判断执行,配置的条件语句放在配置文件中,具体的变量1用$ {x}表示,条件 为(${a} > IOand ‘${b}’ =,test_s' ) or ($ {c}+$ {D} <>3),在代码中动态判断这个条件 是否成立;具体步骤如下DJava代码在执行分支判断时,从配置中读取配置的条件语句;^Java代码替换该条件语句中的变量为实际的变量值;然后将配置的 ...
【技术保护点】
1.用Oracle的dual表实现java代码中动态条件判断的方法,其特征在于,配置的条件语句放在配置文件中,具体的变量x用${x}表示,条件为:(${a}>10and‘${b}’=’test_s’)or(${c}+${D}()3),在代码中动态判断这个条件是否成立;具体步骤如下:1)Java代码在执行分支判断时,从配置中读取配置的条件语句;2)Java代码替换该条件语句中的变量为实际的变量值;然后将配置的条件中的所有变量放到一个hashmap中去,然后轮询这些变量进行实际值替换得到一个赋入实值后的条件语句;3)将替换后的语句拼装到Oracle的sql语句select count(*)from dual的where子句中,连接Oracle数据库进行该sql语句的查询;然后在应用中获取数据库连接后执行该sql,Java代码根据查询结果为0或1来判断条件是否满足,1表示满足,0表示不满足;4)应用根据此返回值来决定是否执行分支。
【技术特征摘要】
【专利技术属性】
技术研发人员:孙新,
申请(专利权)人:浪潮通信信息系统有限公司,
类型:发明
国别省市:88
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。