4.7 OGNL用法

在MyBatis的动态SQL${}形式的参数中都用到了OGNL表达式,MyBatis常用的OGNL表达式如下:

  • 逻辑运算符:and(与)、or(或)、!或not(非)

  • 关系运算符:==或eq、!=或neq、lt(小于)、lte(小于等于)、gt(大于)、gte(大于等于)

  • 算术运算符:+(加)、-(减)、*(乘)、/(除)、%(取余)

  • obj.method(args):调用对象的实例方法

  • obj.property:调用对象的实例字段

  • @class@method(args):调用类的静态方法

  • @class@field:调用类的静态字段

  • array[index]:按索引取值,array可以是List或数组

  • map[key]:按关键字取值,map是一个Map

假设存在一个名为map的Map类型的参数,我们可以通过map['userName']map.userName来获取map中key为userName的值,这里一定要注意,不管userName的值是不是null,必须保证userName这个key存在,否则就会报错

Last updated