效果图
1、创建MyBatis
为什么要勾选这些东西呢?
1、勾选后可以快速的帮我们生成代码
2、更加省时省力
打开这两个继承的类(IService)和(ServiceImpl) 发现已经帮我们写好了增删改查 CRUD
mapper接口也是自动继承了BaseMapper
2、开始写分页
@RestController
@RequestMapping("/account")
@RequiredArgsConstructor
@Tag(name = "account管理", description = "账号管理API接口") //
public class AccountController {
private final AccountService accountService;
@PostMapping("/getAccountPage")
@Operation(summary = "分页查询")
public List<Account> getAccountPage(@RequestBody AccountQuery query) {
IPage<Account> page = accountService.getAccountPage(query);
return page.getRecords();// 返回分页数据
}
}
public interface AccountService extends IService<Account> {
IPage<Account> getAccountPage(AccountQuery query);
}
@Service
@RequiredArgsConstructor
public class AccountServiceImpl extends ServiceImpl<AccountMapper, Account> implements AccountService {
private final AccountMapper accountMapper;
@Override
public IPage<Account> getAccountPage(AccountQuery query) {
Page<Account> page = Page.of(query.getPageNum(), query.getPageSize());
LambdaQueryWrapper<Account> wrapper = new LambdaQueryWrapper<>();
if (query.getName() != null && !query.getName().equals("")) {
wrapper.like(Account::getName, query.getName());
}
return accountMapper.selectPage(page, wrapper);
}
}
@Data
public class AccountQuery {
private Integer PageNum;//当前页码
private Integer PageSize;//每页显示数量
private String name;
}
3、要导入的jar包
<dependencies>
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-web</artifactId>
</dependency>
<dependency>
<groupId>com.baomidou</groupId>
<artifactId>mybatis-plus-spring-boot3-starter</artifactId>
<version>3.5.8</version>
</dependency>
<dependency>
<groupId>mysql</groupId>
<artifactId>mysql-connector-java</artifactId>
<version>8.0.33</version>
</dependency>
<dependency>
<groupId>com.alibaba</groupId>
<artifactId>druid-spring-boot-starter</artifactId>
<version>1.2.23</version>
</dependency>
<dependency>
<groupId>org.projectlombok</groupId>
<artifactId>lombok</artifactId>
</dependency>
<dependency>
<groupId>com.github.xiaoymin</groupId>
<artifactId>knife4j-openapi3-jakarta-spring-boot-starter</artifactId>
<version>4.5.0</version>
</dependency>
</dependencies>
//实现父类SpringBoot
<properties>
<maven.compiler.source>17</maven.compiler.source>
<maven.compiler.target>17</maven.compiler.target>
<project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
</properties>
标签:SpringBoot,spring,private,page,plus,getAccountPage,MyBatis,query,public
From: https://blog.csdn.net/or77iu_N/article/details/144061103