有什么办法可以简化MyBatis中的条件条件

时间:2019-10-29 17:38:16

标签: java

这是我使用MyBatis中的条件查询数据(Java 8)的代码:

public List<ReportSummaryOverview> select(String userName,String gender,String country) {
        ReportSummaryOverviewExample example = new ReportSummaryOverviewExample();
        ReportSummaryOverviewExample.Criteria criteria = example.createCriteria();
        if(StringUtils.isNotBlank(userName)){
            criteria.andUserNameEquals(userName);
        }
        if(StringUtils.isNotBlank(gender)){
            criteria.andGenderEquals(gender);
        }
        if(StringUtils.isNotBlank(country)){
            criteria.andCountryEquals(country);
        }
        List<ReportSummaryOverview> report = reportSummaryOverviewMapper.selectByExample(example);
        return report;
    }

有什么方法可以简化条件,像这样:

 criteria.addSomeParam(userName);

和addSomeParam来确定userName不为null,然后添加为条件,否则为空。当查询参数大于3时,代码看起来难闻。有什么办法可以编写更干净的代码?

0 个答案:

没有答案
相关问题