当前位置: 首页 > wzjs >正文

本溪做网站 淘宝店seo入门到精通

本溪做网站 淘宝店,seo入门到精通,鞍山工程建设信息网站,网站开发 前端 后端 如何结合在 MyBatis Plus 中使用 Select 自定义 SQL 实现通用的分页查询,可按以下步骤操作: 1. 配置分页插件 首先,需要在项目中配置 MyBatis Plus 的分页插件。以 Spring Boot 项目为例,在配置类中添加分页插件的 Bean: im…

在 MyBatis Plus 中使用 @Select 自定义 SQL 实现通用的分页查询,可按以下步骤操作:

1. 配置分页插件

首先,需要在项目中配置 MyBatis Plus 的分页插件。以 Spring Boot 项目为例,在配置类中添加分页插件的 Bean:

import com.baomidou.mybatisplus.extension.plugins.MybatisPlusInterceptor;
import com.baomidou.mybatisplus.extension.plugins.inner.PaginationInnerInterceptor;
import org.springframework.context.annotation.Bean;
import org.springframework.context.annotation.Configuration;@Configuration
public class MyBatisPlusConfig {@Beanpublic MybatisPlusInterceptor mybatisPlusInterceptor() {MybatisPlusInterceptor interceptor = new MybatisPlusInterceptor();interceptor.addInnerInterceptor(new PaginationInnerInterceptor());return interceptor;}
}

2. 定义实体类

假设我们有一个 User 实体类:

import com.baomidou.mybatisplus.annotation.TableName;@TableName("user")
public class User {private Long id;private String name;private Integer age;// 构造函数、Getter 和 Setter 方法public User() {}public User(Long id, String name, Integer age) {this.id = id;this.name = name;this.age = age;}public Long getId() {return id;}public void setId(Long id) {this.id = id;}public String getName() {return name;}public void setName(String name) {this.name = name;}public Integer getAge() {return age;}public void setAge(Integer age) {this.age = age;}@Overridepublic String toString() {return "User{" +"id=" + id +", name='" + name + '\'' +", age=" + age +'}';}
}

3. 定义 Mapper 接口

在 Mapper 接口中使用 @Select 注解编写自定义 SQL,并接收 Page 对象作为参数:

import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import org.apache.ibatis.annotations.Select;public interface UserMapper extends BaseMapper<User> {@Select("SELECT * FROM user WHERE age > #{age}")IPage<User> selectUserByAge(Page<User> page, Integer age);
}

4. 实现分页查询服务

在服务层调用 Mapper 接口的方法进行分页查询:

import com.baomidou.mybatisplus.core.metadata.IPage;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;@Service
public class UserService {@Autowiredprivate UserMapper userMapper;public IPage<User> getUserByAgePage(Integer pageNum, Integer pageSize, Integer age) {Page<User> page = new Page<>(pageNum, pageSize);return userMapper.selectUserByAge(page, age);}
}

5. 调用分页查询方法

在控制器或测试类中调用服务层的方法进行分页查询:

import com.baomidou.mybatisplus.core.metadata.IPage;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.GetMapping;
import org.springframework.web.bind.annotation.RequestParam;
import org.springframework.web.bind.annotation.RestController;@RestController
public class UserController {@Autowiredprivate UserService userService;@GetMapping("/users")public IPage<User> getUsers(@RequestParam Integer pageNum, @RequestParam Integer pageSize, @RequestParam Integer age) {return userService.getUserByAgePage(pageNum, pageSize, age);}
}

解释

  • 分页插件配置MybatisPlusInterceptor 是 MyBatis Plus 的拦截器,PaginationInnerInterceptor 是分页拦截器,用于实现分页功能。
  • Mapper 接口@Select 注解中的 SQL 是自定义的查询语句,Page 对象作为参数传入,MyBatis Plus 会自动处理分页逻辑。
  • 服务层:创建 Page 对象,设置当前页码和每页记录数,调用 Mapper 接口的方法进行分页查询。
  • 控制器:接收前端传入的页码、每页记录数和查询条件,调用服务层的方法进行分页查询并返回结果。

通过以上步骤,就可以在 MyBatis Plus 中使用 @Select 自定义 SQL 实现通用的分页查询。

http://www.dtcms.com/wzjs/390216.html

相关文章:

  • 网站运营专员是干嘛的搜狗指数官网
  • 营销型网站建设对比分析李飞seo
  • 兰州学校网站建设抖音推广渠道有哪些
  • 常见的网站开发环境兰州seo网站建设
  • 青海西宁高端网站建设百度快速排名提升
  • 倒v是网站设置的还是作家自己网站设计软件
  • 网站策划的具体内容是什么刚刚传来最新消息
  • 手机网站免费制作学网络营销去哪个学校
  • 网站制作建设哪家公司好sem优化托管公司
  • 动画网站模板惠州seo网站排名
  • 国学底蕴的公司名字广州seo排名优化服务
  • 石家庄建设集团网站厦门网络营销推广
  • asp网站建设教程百度助手app免费下载
  • 武汉制作手机网站google入口
  • 无锡网站制作需要多少钱百度企业官网
  • 啥也不懂怎么建设网站网站优化建议
  • 网站策划书3000内容企业推广
  • 杭州网站搭建搜索引擎seo优化怎么做
  • 长沙银狐做网站郑州疫情最新情况
  • 利用wps做网站宁波seo公司排名
  • 做企业公司网站搜狗广告联盟
  • 电脑上自己做科目一的网站策划品牌全案
  • 西安网页设计工资seo排名优化哪家好
  • 网站源码如何优化企业网站推广效果指标分析
  • 建设网站费用记什么科目网站建设方案开发
  • 做内贸的有哪些网站免费的个人网页
  • java做网站开发的流程电商sem是什么意思
  • 用模板做的网站不好优化百度联盟官网登录入口
  • 杭州有做网站免费的域名和网站
  • 网站所有者是什么意思查询网站流量的网址