mybatis plus in方法の使い方について詳しく説明します。


ListタイプのStringであれば、例えばList<String>のようなタイプのものはそのまま値を入れればいいです。ここでは、リストのセットがどのように価値を遍歴しているかを調べたら、sqlとインターフェースを書くのは面倒です。
ステップは以下の通りです

//   list  
List<User> userList = userService.selectById(id);
//   
List<String> resultList = new ArrayList<>();
//      
 userList .forEach(item->{
      resultList.add(item.getYouNeedId());
 });
 //     in    
 QueryWrapper<User> qw = new QueryWrapper<>();
 qw.in("you_need_id", resultList);
 //         ,        , mybatisplus         
 IPage<User> userIPage = userMapper.selectPage(page, qw);
 //      ,getRecords  mybatisplus       
 return contractRecordIPage.getRecords();

 補足:Mybatis Plus QueryWrapperによるクエリ時in()メソッドの使用
UserId類:

@Data
public class UserId {
 /**
  *   id  
  */
 private JSONArray userIdList;
}

テストクラス:

public class Test{
 public JSONArray getUserStatusList(UserId userId) {
  //       ,JsonArray   null    0     ,   sql
  if (userId.getUserIdList() == null  || userId.getUserIdList().size() == 0) {
  return new JSONArray();
  }
  //     Wrapper  
  QueryWrapper wrapper = new QueryWrapper();
  wrapper.in("user_id", userId.getUserIdList());
  List list = baseMapper.selectObjs(wrapper);
  return JSONArray.parseArray(JSON.toJSONString(list));
 }
}

空チェックをしないと、セットが空セットの場合はSQLの異常を報告します。
以上、mybatis plus in方法について詳しく説明した文章をここに紹介します。もっと関連したmybatis plus内容は以前の文章を検索してください。または次の関連記事を引き続きご覧ください。これからもよろしくお願いします。