mybatis Plus 多表联合查询的实现示例
本文主要介绍了mybatisPlus多表联合查询,分享给大家,具体如下:
//实体类packagecom.sk.skkill.entity;
importcom.baomidou.mybatisplus.annotation.TableField;
importcom.baomidou.mybatisplus.annotation.TableName;
importlombok.Data;
importjava.io.Serializable;
importjava.util.Date;
importjava.util.List;
@TableName("orders")
@Data
publicclassOrderimplementsSerializable
{
publicstaticfinallongserialVersionUID=1L;
privateStringid;
privateStringorderName;
privateDatecreateTime;
privateDateupdateTime;
privateStringuserID;
@TableField(exist=false)
privateListlistUsers;
publicOrder(){
}
publicOrder(Stringid,StringorderName){
this.id=id;
this.orderName=orderName;
}
}
//dao层 packagecom.sk.skkill.mapper; importcom.baomidou.mybatisplus.core.mapper.BaseMapper; importcom.baomidou.mybatisplus.extension.plugins.pagination.Page; importcom.sk.skkill.entity.Order; importcom.sun.javafx.collections.MappingChange; importorg.apache.ibatis.annotations.Select; importjava.util.List; importjava.util.Map; publicinterfaceOrderMapperextendsBaseMapper{ List selectOrder(); intaddOrder(Orderorder);
//多表联合查询按条件orderID
@Select("selectt1.*,t2.user_name,t2.nick_namefromorderst1LEFTJOINuserst2ONt1.user_id=t2.idWHEREt1.user_id=#{id}")
List
//service层 packagecom.sk.skkill.service; importcom.baomidou.mybatisplus.extension.plugins.pagination.Page; importcom.baomidou.mybatisplus.extension.service.IService; importcom.sk.skkill.entity.Order; importjava.util.List; importjava.util.Map; publicinterfaceOrderServiceextendsIService{ List selectOrder(); intaddOrder(Orderorder); //List >orderUserList(Page >page,Stringid); Page >selectListPage(intcurrent,intnumber,Stringid); }
//serviceImpl层 packagecom.sk.skkill.service.impl; importcom.baomidou.mybatisplus.extension.plugins.pagination.Page; importcom.baomidou.mybatisplus.extension.service.impl.ServiceImpl; importcom.sk.skkill.entity.Order; importcom.sk.skkill.mapper.OrderMapper; importcom.sk.skkill.service.OrderService; importorg.springframework.stereotype.Service; importjava.util.List; importjava.util.Map; @Service publicclassOrderServiceImplextendsServiceImplimplementsOrderService { @Override publicList selectOrder(){ returnbaseMapper.selectList(null); } @Override publicintaddOrder(Orderorder){ returnbaseMapper.insert(order); } @Override publicPage >selectListPage(intcurrent,intnumber,Stringid){ //新建分页 Page >page=newPage >(current,number); //返回结果 returnpage.setRecords(this.baseMapper.orderUserList(page,id)); } }
//controller层
packagecom.sk.skkill.controller;
importcom.baomidou.mybatisplus.extension.plugins.pagination.Page;
importcom.sk.skkill.entity.Order;
importcom.sk.skkill.service.impl.OrderServiceImpl;
importorg.springframework.beans.factory.annotation.Autowired;
importorg.springframework.stereotype.Controller;
importorg.springframework.web.bind.annotation.RequestMapping;
importorg.springframework.web.bind.annotation.RestController;
importjava.util.List;
importjava.util.Map;
@RestController
@RequestMapping("order")
publicclassOrderController
{
@Autowired
privateOrderServiceImplservice;
@RequestMapping("selectOrder")
publicListselectOrder()
{
returnservice.selectOrder();
}
@RequestMapping("addOrder")
publicintaddOrder(Orderorder){
order=newOrder("FGGG","蒙牛MILK");
returnservice.addOrder(order);
}
@RequestMapping("selectListPage")
publicList>selectListPage(Stringid)
{
Page>page=service.selectListPage(1,2,id);
returnpage.getRecords();
}
}
到此这篇关于mybatisPlus多表联合查询的实现示例的文章就介绍到这了,更多相关mybatisPlus多表联合查询内容请搜索毛票票以前的文章或继续浏览下面的相关文章希望大家以后多多支持毛票票!