mybatis-plus 做二级映射 返回list 具体代码
时间: 2025-06-15 18:19:21 浏览: 13
MyBatis-Plus是一个基于MyBatis的ORM框架增强工具,它简化了数据持久化操作,包括动态SQL、CRUD等常用功能。对于做二级映射并返回List的操作,通常是在Repository层编写方法,这里提供一个基本的例子:
```java
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import org.springframework.data.domain.Sort;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
public interface YourMapper extends BaseMapper<YourEntity>, YourServiceMapper {
/**
* 分页查询
* @param page 分页对象
* @param sort 排序信息
* @return 查询结果列表
*/
IPage<YourEntity> getList(Page<YourEntity> page, Sort sort);
// 如果需要添加分页查询的通用方法
default Page<YourEntity> getList(int pageNum, int pageSize, String orderColumn, String orderDirection) {
Page<YourEntity> page = new Page<>(pageNum, pageSize); // 创建Page对象
return getList(page, Sort.by(orderColumn, orderDirection)); // 设置排序并调用实际的查询方法
}
}
// Service层调用
@Service
class YourServiceImpl extends ServiceImpl<YourMapper, YourEntity> {
public List<YourEntity> getAllData() {
return yourMapper.getList(new Page<>(), null); // 获取所有数据(默认无排序)
}
// 根据需求添加其他查询方法,比如按某个字段分页获取
public List<YourEntity> getDataByPage(int pageNum, int pageSize) {
return yourMapper.getList(getPage(pageNum, pageSize), Sort.by("yourField", "asc")); // 按照"yourField"升序分页获取
}
}
```
在这个例子中,`YourMapper`接口定义了一个静态方法`getList()`,用于接收分页对象和排序信息,然后通过`ServiceImpl`注入的`YourMapper`实例进行数据库查询。`getAllData()`方法就是一个简单的全量查询,`getDataByPage()`则示例了如何按照指定页数和排序条件进行分页查询。
阅读全文
相关推荐


















