使用springboot整合mybatis-plus(自定義sql查詢)
導入依賴(注意:mybatis-plus的版本要大於3.1.2,這里使用的是3.2.0,不然會報錯)
pom.xml
<!-- mybatis-plus-->
<dependency>
<groupId>com.baomidou</groupId>
<artifactId>mybatis-plus-boot-starter</artifactId>
<version>3.2.0</version>
</dependency>
實體類
這里就不貼代碼了哈,把自己需要查詢的字段放到Vo中就好了。
mapper層
@Select("select member.*,shipping_address.* from member left join shipping_address on member.member_id=shipping_address.member_id") IPage<UsersAddressVo> selectUserListPage(Page<UsersAddressVo> page, UsersAddressVo usersAddressVo);
service層
IPage<UsersAddressVo> selectUserListPage(UsersAddressVo usersAddressVo, Integer pageNum, Integer pageSize);
service業務實現層
@Override public IPage<UsersAddressVo> selectUserListPage(UsersAddressVo usersAddressVo, Integer pageNum, Integer pageSize) { Page<UsersAddressVo> iPage = new Page<UsersAddressVo>(pageNum, pageSize); IPage<UsersAddressVo> memberList = memberMapper.selectUserListPage(iPage, usersAddressVo); return memberList; }
controller層
@GetMapping("/uniteList") public TableDataInfo uniteTable(UsersAddressVo usersAddressVo, @RequestParam("pageNum") Integer pageNum, @RequestParam("pageSize") Integer pageSize){ IPage<UsersAddressVo> memberIPage = memberService.selectUserListPage(usersAddressVo, pageNum, pageSize); List<UsersAddressVo> records = memberIPage.getRecords(); return getDataTable(records); }
本地測試
@Test public void contextLoads() { Page<UsersAddressVo> pages=new Page<>(1,10); memberMapper.selectUserListPage(pages,null); }
postman測試如下: