上海千语创想科技有限公司
 175-2108-6175
网站建设资讯详细

DSL介绍:DSL是什么?

日期:2021-02-24  作者:千语创想  浏览:6102

DSL的全称是动态脚本语言(Dynamic Script Language),它是对脚本语言的一种扩展。DSL使用:加参数名表示普通参数,使用#加参数名表示嵌入式参数,并使用特殊字符#[]标记动态片段,当解析时,判断实际传入参数值是否为空(null)或不存在决定是否保留该动态片段,从而达到动态执行不同脚本目的。以此来避免程序员手动拼接繁杂的脚本,使得程序员能从繁杂的业务逻辑中解脱出来。此外,DSL脚本支持宏,来增强脚本的动态逻辑处理能力。

参数

普通参数

使用:加参数名表示普通参数,例如,:staffName。

嵌入式参数

使用#加参数名表示(例如,#staffName)嵌入式参数,嵌入式参数会被以字符串的形式嵌入到脚本中。 值得注意的是:如果在SQL脚本中使用嵌入式参数,会有SQL注入风险,一定注意不要使用前端传参直接作为嵌入式参数使用 。1.2.2版本开始支持嵌入式参数。

动态参数

动态参数是指,根据具体情况确定是否在动态脚本中生效的参数,动态参数是动态片段的组成部分。动态参数既可以是普通参数,也可以嵌入式参数。

静态参数

静态参数是相对动态参数而言的,它永远会在动态脚本中生效。在动态片段之外使用的参数就是静态参数。静态参数既可以是普通参数,也可以嵌入式参数。

参数访问符

参数访问符包括两种,即.[], 使用Map传参时,优先获取键相等的值,只有键不存在时才会将键降级拆分一一访问对象,直到找到参数并返回,或未找到返回null。其中.用来访问对象的属性,例如:staff.name#staff.age[]用来访问数组、集合的元素,例如:array[0]#map[key]。理论上,支持任意级嵌套使用,例如:list[0][1].name#map[key][1].staff.name。1.2.2版本开始支持参数访问符。

动态片段

DSL使用特殊字符#[]标记动态片段,并连同动态参数一起构成动态片段,动态片段可以是任意脚本片段。


来千语创想移动应用开发平台学习更多APP开发知识:app开发app制作app开发源码下载app开发框架app制作模板等免费获取。千语创想支持APP定制开发,一键网站自动生成app网站转app网站封装app,有网站即可生成自己的app。

立即免费在线制作一个APP,新手注册即送开发大礼包

提交app定制需求,免费获取报价和周期:

电脑请点击https://www.qianyuthink.com/?url=/index?uzchannel=500

手机请点击https://www.qianyuthink.com/?url=/m/quickaddcustom



转载请注明来自:https://www.qianyuthink.com/news/6597.html

填写您的项目需求给我们

或者直接拨打 7×12小时一对一咨询电话

175 2108 6175

请填写需求信息,我们会在10分钟内与您取得联系

请认真填写需求信息,我们会在10分钟内与您取得联系

×
客服二维码
咨询技术总监
175-2108-6175
客服二维码
技术总监微信
客服二维码