代码拉取完成,页面将自动刷新
无需手动编写单表增删改查方法,框架自动生成
与通用Mapper、MyBatis-Plus等三方框架兼容(三者选其一即可,功能类似)
【可选】内置枚举类型处理器,优雅解决枚举类型问题,无需手动转换
【可选】内置泛型Service,避免重复造轮子编写大量类似的Service方法代码
【可选】内置两种方式逻辑删除,可放心大胆的在生产环境进行delete操作,不用担心误删数据
【可选】分页插件支持单表、多表关联查询、支持复杂的多表分页查询
【可选】sql打印插件已经用实际参数替换了?占位符,可以从日志文件拷贝出来直接执行
【可选】乐观锁插件透明解决乐观锁问题
框架本身依赖mybatis-spring,仅在应用启动时织入框架逻辑,不破坏任何mybatis核心,原则上可以兼容任何mybatis版本
<arg>-parameters</arg>
,因为需要通过反射获取参数名称(这是jdk8的特性)<dependency>
<groupId>com.github.dreamroute</groupId>
<artifactId>mybatis-pro-boot-starter</artifactId>
<version>latest version</version>
</dependency>
public interface UserMapper {
// 这是一个根据用户名、密码查询单个用户的查询,方法名只需要以findBy打头,接着方法名为: NameAndPassword
User findByNameAndPassword(String name, String password);
}
你无需在xml文件中编写sql,也无需使用注解@Select("xxx")的sql,框架自动根据方法名:
findByNameAndPassword切割成findBy
,Name
, And
, Password
,组成如下sql:
select * from user where name = #{name} and password = #{password}
需求:查询字段version字段大小在2~4之间,并且根据id反向排序
@Test
void proTest() {
List<User> users = findByVersionBetweenOrderByIdDesc(2L, 4L);
}
@Test
void plusTest() {
LambdaQueryWrapper<User> qw = new LambdaQueryWrapper<>();
LambdaQueryWrapper<User> query = qw.between(User::getVersion, 2L, 4L);
query.orderByDesc(User::getId);
List<User> users = userMapper.selectList(query);
}
@Test
void mapperTest() {
Example e = new Example(User.class);
e.orderBy("id").desc();
Criteria criteria = e.createCriteria().andBetween("version", 2L, 4L);
List<User> users = userMapper.selectByExample(e);
}
Email: 342252328@qq.com
此处可能存在不合适展示的内容,页面不予展示。您可通过相关编辑功能自查并修改。
如您确认内容无涉及 不当用语 / 纯广告导流 / 暴力 / 低俗色情 / 侵权 / 盗版 / 虚假 / 无价值内容或违法国家有关法律法规的内容,可点击提交进行申诉,我们将尽快为您处理。