Mybatis-Plus條件構造器condition動態判斷條件


mp框架,在條件構造方法里,都會重載一個condition參數;

這個參數的作用是動態判斷條件,假如condition是true,則拼接加條件,false的話,則不拼接加條件;

我們前台傳來的動態條件,以前是通過代碼判斷拼接,現在我們可以直接條件構造方法里寫,大大簡化代碼量;

 

我們看下實例:

需求:動態判斷條件 根據性別和名字查詢

以前我們一般都是這么干的,先判斷后拼接;

/**
 * 動態判斷條件 根據性別和名字查詢
 */
@Test
public void selectByQueryWrapperWidthCondition10(){
    QueryWrapper<Employee> queryWrapper=new QueryWrapper();
    // QueryWrapper<Employee> queryWrapper2=Wrappers.<Employee>query();
    String s_gender="";
    String s_name="";
    if(StringUtil.isNotEmpty(s_gender)){
         queryWrapper.eq("gender",s_gender);
    }
    if(StringUtil.isNotEmpty(s_name)){
         queryWrapper.like("name",s_name);
    }
    List<Employee> employeeList = employeeMapper.selectList(queryWrapper);
    System.out.println(employeeList);
}

我們用condition實現:

/**
 * 動態判斷條件 根據性別和名字查詢
 */
@Test
public void selectByQueryWrapperWidthCondition10(){
    QueryWrapper<Employee> queryWrapper=new QueryWrapper();
    String s_gender="";
    String s_name="";
    queryWrapper.eq(StringUtil.isNotEmpty(s_gender),"gender",s_gender).like(StringUtil.isNotEmpty(s_name),"name",s_name);
    List<Employee> employeeList = employeeMapper.selectList(queryWrapper);
    System.out.println(employeeList);
}

這樣寫的話 代碼簡潔多了

 

 

------------------------------------------------------------------------------------------------------------------------------

作者: java1234_小鋒

出處:https://www.cnblogs.com/java688/p/13594802.html

版權:本站使用「CC BY 4.0」創作共享協議,轉載請在文章明顯位置注明作者及出處。

------------------------------------------------------------------------------------------------------------------------------

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM