6 Star 10 Fork 3

baomidou / mybatis-plus-advance

加入 Gitee
与超过 1200万 开发者一起发现、参与优秀开源项目,私有仓库也完全免费 :)
免费加入
该仓库未声明开源许可证文件(LICENSE),使用请关注具体项目描述及其代码上游依赖。
克隆/下载
贡献代码
同步代码
取消
提示: 由于 Git 不支持空文件夾,创建文件夹后会生成空的 .keep 文件
Loading...
README

使用说明

本插件需要配合mybatis_plus_advance_idea_plugin 插件 一起使用(后期稳定了合并到mybatisx插件里去),我在项目中已经提供,在plugIn文件夹下。 项目依赖了此jar后,会自动生成一系列的方法 和自动生成mapper(可配置)

1.1 自动生成wrapper

@Data
@TableName(value="user",genMapper = true)  //这里设置为true即可自动生成mapper
public class User {
}

自动生成的mapper是User的静态内部接口,所以要加mapper扫描目录到po目录比如:

@MapperScan(basePackages = {"com.fhs.test.pojo","com.fhs.test.mapper"})

1.2 单表查询

new User().userId().eq(1).name().like("王").age().orderByAsc().one()

1.3 多表join查询

  User user = new User();
  user.userId().eq(1).select(User.USERID,User.NAME,User.SEX,User.SCHOOLID).innerJoin(School.class)
                .select(School.ID,School.SCHOOLNAME,School.REMARK).schoolName().like("一");

  user.list();

1.4 支持方法说明

1.4.1 class和提示已经支持自动生成的方法有:

bean2Wrapper,list,select(String... fields),one,count,delete,update,innerJoin,leftJoin,rightJoin

1.4.2 已经支持的wrapper相关操作方法有:

eq,neq,ge,gt,le,lt,like,notLike,likeLeft,likeRight,in,notIn,between,notBetween,orderByAsc,orderByDesc,isNull,notNull

1.5 前端高级查询API

前端高级查询API是一套标准的查询传参规范,可以在后端不写SQL的情况下根据前端参数自动组装wrapper,比如我想查询名字叫做王磊或者王磊1的并且性别为男的人可以这样传参:

 {
  "sorter":[{
    "property":"userId",
    "direction":"DESC"
  }],
  "querys":[{
    "property":"name",
    "operator":"=",
    "value":"王磊",
    "relation":"OR",
    "group":"nameGroup"
  },
    {
      "property":"name",
      "operator":"=",
      "value":"王磊1",
      "relation":"OR",
      "group":"nameGroup"
    },{
      "property":"sex",
      "value":"男"
    }]
}

后端使用:

@PostMapping("filter")
public List<User> filter(@RequestBody QueryFilter<User> filter){
        return userService.selectList(filter.asWrapper(User.class));
}

代码阅读说明

本插件代码入口为:MybatisPlusModelInjectorAnnotationProcessor,为AST修改总入口,FuntionTools 为组装wrapper,执行sql返回结果。ASTBuilder AST语法树构造器。ModelExtension PO扩展接口。

空文件

简介

mybatis-plus-advance 展开 收起
Java
取消

发行版

暂无发行版

贡献者

全部

近期动态

加载更多
不能加载更多了
1
https://gitee.com/baomidou/mybatis-plus-advance.git
git@gitee.com:baomidou/mybatis-plus-advance.git
baomidou
mybatis-plus-advance
mybatis-plus-advance
master

搜索帮助