MyBatis常用OGNL表达式
- e1 or e2
- e1 and e2
- e1 == e2,e1 eq e2
- e1 != e2,e1 neq e2
- e1 lt e2:小于
- e1 lte e2:小于等于,其他gt(大于),gte(大于等于)
- e1 in e2
- e1 not in e2
- e1 + e2,e1 * e2,e1/e2,e1 - e2,e1%e2
- !e,not e:非,求反
- e.method(args)调用对象方法
- e.property对象属性值
- e1[ e2 ]按索引取值,List,数组和Map
- @class@method(args)调用类的静态方法
- @class@field调用类的静态字段值
==============================
1.1.if
n if标签:判断语句,用于进行逻辑判断的。
test属性:用来编写表达式,支持ognl.
案例:查询男性用户,如果输入了用户名,按用户名模糊查询,如果没有输入用户名,就查询所有男性用户。
正常的sql语句:查询男性并且用户名中包含zhang
但是要求时还要判断用户是否输入用户名来做不同的查询要求,而这里似乎没有办法判断是否输入了用户名,因此可以考虑使用动态sql来完成这个功能。