mybatis_19_设置属性默认值
从mybatis3.4.2开始,可以为占位符指定一个默认值,这个特性默认是关闭的,需要通过一个特定的属性来开启这个特性;
示例:
<properties url="file:\\\D:\WEBDEMO\simple\src\main\resources\config.properties" > <property name="org.apache.ibatis.parsing.PropertyParser.enable-default-value" value="true"/> </properties>
默认值设置参考:
格式:
变量名:默认值
<dataSource type="POOLED"> <property name="url" value="${url:jdbc:postgresql://172.16.x.x:5432/database_name}"/> </dataSource>
分析:
当属性url没有被设置时,url的属性值将为“jdbc:postgresql://172.16.x.x:5432/database_name”
提示:
如果在属性名中使用了“:”字符(如db:url),或者在SQL映射中使用了OGNL表达式的三元运算符(如:${url != null ? url : 'jdbc:postgresql://172.16.x.x:5432/database_name'}),此时需要设置特定的属性来修改分隔属性名和默认值的字符。
示例1:
变量名为db:url
<properties resource="config.properties"> <property name="org.apache.ibatis.parsing.PropertyParser.enable-default-value" value="true"/> <property name="org.apache.ibatis.parsing.PropertyParser.default-value-separator" value="?:"/> </properties> <dataSource type="POOLED"> <property name="url" value="${db:url?:jdbc:postgresql://172.16.x.x:5432/database_name}"/> </dataSource>