一款超级强大的 ORM 框架 mybatis-mp 1.6.2 正式发布

官网 :https://mybatis-mp.cn

1. 单表 +@Fetch 注解 + fetchFilter 方法

@Data
@ResultEntity(SysUser.class)
public class SysUserVo {

    private Integer id;

    private String userName;

    private String password;

    private Integer roleId;

    private LocalDateTime create_time;

    @Fetch(source = SysUser.class, property = "roleId", target = SysRole.class, targetProperty = "id")
    private List<SysRoleVo> sysRoles;

}
List<SysUserVO> list = QueryChain.of(sysUserMapper)
        .from(SysUser.class)
        .fetchFilter(SysUserVO::getRoles,where->where.eq(SysRole::getStatus,1))
        .returnType(SysUserVO.class)
        .list();

fetchFilter 方法是对 @Fetch 注解的增强,没有特殊要求一般,可忽略

2. 单表查询

SysUser sysUser = QueryChain.of(sysUserMapper)
        .eq(SysUser::getId, 1)
        .eq(SysUser::getUserName,'admin')
        .get();

3.VO 映射

@Data
@ResultEntity(SysUser.class)
public class SysUserVo {

    private Integer id;

    private String userName;

    //字段名字不一样时
    @ResultEntityField(property = "password")
    private String pwd;

}
SysUserVO sysUserVO = QueryChain.of(sysUserMapper)
        .eq(SysUser::getId, 1)
        .eq(SysUser::getUserName,'admin')
        .returnType(SysUserVO.class)
        .list();

4. join 查询

@Data
@ResultEntity(SysUser.class)
public class SysUserVo {

    private Integer id;

    private String userName;

    //字段名字不一样时
    @ResultEntityField(property = "password")
    private String pwd;
    
    //映射一个对象 1对1
    @NestedResultEntity(target = SysRole.class)
    prviate SysRole sysRole;
    
    //映射多个对象 1对多
    @NestedResultEntity(target = SysRole.class)
    prviate List<SysRole> sysRoles;

}
List<SysUserRoleVO> list = QueryChain.of(sysUserMapper)
        .from(SysUser.class)
        .join(SysUser.class, SysRole.class)
        .returnType(SysUserRoleVO.class)
        .list();

它拥有与众不同的 几大亮点:

1:mybatis-mp - 亮点一:可自定义动态默认值

2:mybatis-mp - 亮点二:支持不同数据库ID自增配置

3:mybatis-mp - 亮点三:逻辑删除,可自动填充删除时间

4:mybatis-mp - 亮点四:可自定义sql(sql模板)

5:mybatis-mp - 亮点五:mapWithKey(把查询转成一个 map)

6:mybatis-mp - 亮点 六:部分字段 新增 和 修改

7:mybatis-mp - 亮点七:枚举的良好支持

8:mybatis-mp - 亮点八:mybatis-xml returnType 的 ORM 映射

9:mybatis-mp - 亮点九:优雅的 XML和 @Select查询 自动分页

10:mybatis-mp - 亮点十:支持多层嵌套VO,自动映射以及自动select 所需列

更多请前往官方文档:http://mybatis-mp.cn

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值