java8项目使用:利用泛型 lamdba表达式 stream 转化list里的类

需求描述:用mybatisPlus框架原生方法直接查到List<实体>,想要转换成List<展示层> 就这样的需求

方案1 function在方法里实现
import com.baomidou.mybatisplus.core.metadata.IPage;
import org.springframework.beans.BeanUtils;

import java.util.List;
import java.util.stream.Collectors;

/**
 * 类 名: MybatisUtils
 * 描 述:
 * 作 者: binglong180
 * 创 建: 2020-07-20 15:26
 * 邮 箱: [email protected]
 */

public class MybatisUtils<T> {

  public <R>IPage convert(IPage<T> iPage,R y) {
    List collect =
      iPage.getRecords().stream().map(x -> {
        BeanUtils.copyProperties(x,y);
        return y;
      }).collect(Collectors.toList());
    return  iPage.setRecords(collect);
  }


}
方案2 直接传入Function

你可能感兴趣的:(java高级)