<if test="@Ognl@isNotEmpty(name)">
AND A.NAME like '%${name}%'
</if>
<if test="@Ognl@isNotEmpty(mobile)">
AND A.MOBILE = #{mobile}
</if>
public class Ognl {
/**
* 可以用于判断 Map,Collection,String,Array是否为空
*
* @param o
* @return
*/
@SuppressWarnings("unchecked")
public static boolean isEmpty(Object o) throws IllegalArgumentException {
if (o == null)
return true;
if (o instanceof String) {
return StringUtils.isEmpty((String) o);
} else if (o instanceof Collection) {
return CollectionUtils.isEmpty((Collection) o);
} else if (o.getClass().isArray()) {
return ArrayUtils.isEmpty((Object[]) o);
} else if (o instanceof Map) {
MapUtils.isEmpty((Map) o);
} else if (o instanceof Date) {
return o == null;
} else if (o instanceof Number) {
return o == null;
} else if (o instanceof Boolean) {
return o == null;
} else {
throw new IllegalArgumentException("Illegal argument type,must be : Map,Collection,Array,String. but was:"
+ o.getClass());
}
return false;
}
/**
* 可以用于判断 Map,Collection,String,Array是否不为空
*
* @param c
* @return
*/
public static boolean isNotEmpty(Object o) {
return !isEmpty(o);
}
public static boolean isNotEmpty(Object... objects) {
if (objects == null)
return false;
for (Object obj : objects) {
if (isEmpty(obj)) {
return false;
}
;
}
return true;
}
public static boolean isNotBlank(Object o) {
return !isBlank(o);
}
public static boolean isNumber(Object o) {
if (o instanceof Number) {
return true;
} else if (o instanceof String) {
return NumberUtils.isNumber((String) o);
} else {
return false;
}
}
public static boolean isBlank(Object o) {
return StringUtils.isBlank((String) o);
}
public static boolean isBlank(String str) {
return StringUtils.isBlank(str);
}
}
Ognl.java 必须放在class目录,也就是没有包名。