项目见github https://github.com/fan-code/mybatis_plus.git
该文章参考了 https://www.jianshu.com/p/198647219592
1. 项目整体层级
2. 先建mysql表和导数
CREATE TABLE user (id BIGINT(20) NOT NULL COMMENT '主键ID',name VARCHAR(30) NULL DEFAULT NULL COMMENT '姓名',age INT(11) NULL DEFAULT NULL COMMENT '年龄',email VARCHAR(50) NULL DEFAULT NULL COMMENT '邮箱',PRIMARY KEY (id)
);INSERT INTO user (id, name, age, email) VALUES
(1, 'Jone', 18, 'test1@baomidou.com'),
(2, 'Jack', 20, 'test2@baomidou.com'),
(3, 'Tom', 28, 'test3@baomidou.com'),
(4, 'Sandy', 21, 'test4@baomidou.com'),
(5, 'Billie', 24, 'test5@baomidou.com'),
(6, 'JackSon', 27, 'test6@baomidou.com');
3.代码下载下来就可以测试了
3. 项目值得注意的地方 mybatis的xml配置和注解哪个优先级高?
注意这个地方 xml注解里也是findUserByName,注解我们是固定写的
经测试 xml的优先级是高于 注解的,我们可以将findUserByName 改成findUserByNam测一下,因为这个时间xml的配置id不生效
当然,对于简单的增删改查,如果我们不想注解或者xml,也可以在 UserServiceImpl 中这么写
QueryWrapper<User> condition = new QueryWrapper<>();//like模糊查询且年龄小于25
// condition.lambda().like(User::getName, name).lt(User::getAge, 25);condition.lambda().select(User::getId,User::getName,User::getAge).like(User::getName, name).orderByDesc(User::getAge);return baseMapper.selectList(condition);