假设我有一个称为inactiveUsers的庞大表和一个搜索表单。如果选择了任何与用户相关的特征(地址,名称,电话号码等),我想有条件地加入inactiveUsers表。没有以下任何方法可以做到这一点:

<isNotEmpty property="address">JOIN inactiveUsers</isNotEmpty>
<isNotEmpty property="phoneNumber">JOIN inactiveUsers</isNotEmpty>
<isNotEmpty property="name">JOIN inactiveUsers</isNotEmpty>


等等,另外10-20个isNotEmpty子句。我想做类似的事情:

<isAnyNotEmpty properties="address, phoneNumber, name, ....">JOIN inactiveUsers</isNotEmpty>


ibatis是否可能?如果是这样,怎么办?

最佳答案

我会创建一个布尔属性useJoin

public boolean isUseJoin() {
        if(!adress.equals("") && !phoneNumber.equals("")&&!name.equals("")) {
            return true;
        } else {
            return false;
        }
    }


不是完美的,但似乎比IBATIS子句中的多个语句更好。

10-06 05:46