设计说明
在项目开发中我们经常会为了配合系统的调试做很多临时性的设定,当我们向正式环境中部署时,系统部署人员往往不是很了解这些设定,没有将这些属性设定调整为生产环境所需,从而导致很多问题,包括安全性方面的。根据这种情况dorado提供了运行模式处理机制,它允许你根据不同的运行环境定义名称不同的配置文件,而在最终发布时,我们只要调整一个系统全局变量就可以进行切换。这样我们从一种运行环境切换到另一种环境时,系统发布人员只要修改一个变量的值。很显然这很受系统部署人员的欢迎。
dorado7通过config.properties文件中runMode的值做运行模式的切换,如图:
系统运行时,会自动检测运行模式,并会给出运行模式的警告:
dorado中默认提供了三种运行机制: production(生产环境),debug(开发和调试),test(测试).如果不指定运行模式,默认就是production运行模式,另外运行模式也可以自定义。
配置装载规则
configure.properties是首先被装载的属性文件,如果发现core.runMode做了设定,则系统会自动查找configure-xxx.properties文件,并加载。
如core.runMode为"debug",则系统自动查找configure-debug.properties文件。并且将configure-debug.properties中的配置信息覆盖到configure.properties配置文件中。
但是产品正式发布的时候建议将core.runMode的值清空,默认情况下如果dorado发现这个值为空,就自动的以production模式运行。这个时候按照上面配置装载规则的说明其中的configure-debug.properties中的属性就不会起作用.
另外doradohome下的其它配置文件也支持运行模式,如:context.xml文件,如我们设定core.runMode为debug时,我们就可以定义一个context-debug.xml文件。在debug运行模式下dorado会尝试查找context-debug.xml文件,并覆盖context.xml文件。
dorado默认提供的常用配置属性
属性名 | 默认值 | 说明 |
---|---|---|
core.runMode | production | 生产环境 |
view.debugEnabled | false | 是否允许启用Dorado提供的Debugger工具,如果启用,则在浏览器中的视图中按F2快捷按钮就可以打开Debugger工具 |
view.useMinifiedJavaScript | true | 是否使用压缩后的JavaScript,一般产品调试时采用非压缩状态,有利于调试,而正式发布后采用压缩状态,有利于降低网络的数据流量,提供性能 |
view.useMinifiedStyleSheet | true | 是否使用压缩后的Style,原理同上。 |
view.outputPrettyJson | false | 是否格式化输出JSON数据,原理同上。 |
view.skin | default | 默认的皮肤 |
view.mergeJavaScript | true | 是否合并JavaScript,正式发布后建议采用合并,原理同上 |
view.mergeStyleSheet | true | 是否合并CSS文件,正式发布后建议采用合并,原理同上 |
view.useRandomStringAlias | true | 为LoadRunner这类压力测试工具专门设计的参数 是否启用随机别名机制,例如作为服务的view的名字 |
core.classPathResourceReloadable | false | 主要针对资源类文件的加载,如js,css等,一般用在deubg模式,避免重新发布和重启 |
data.config.autoReloadEnabled | false | 针对doradohome文件的重新加载,也适用于debug模式 |
data.config.autoRecalculatePaths | false | autoRecalculatePaths与autoReloadEnabled类似,处理pathPrefix |
view.showExceptionStackTrace | false | 是否显示ExceptionStackTrace |