- 导入jar包
- yml改动
- 配置POJO
- 配置Mapper
- 测试
- 条件构造器
- 利用构造器创造条件
导入后不需要添加Mybatis依赖
yml改动com.baomidou mybatis-plus-boot-starter 3.4.3
将mybatis改为maybatis-plus,其他不变
#SpringBoot整合mybatisplus
mybatis-plus:
#指定别名包
type-aliases-package: com.jt.pojo
#加载指定的xml映射文件
mapper-locations: classpath:/mybatis/mappers/*.xml
#开启驼峰映射
configuration:
map-underscore-to-camel-case: true
配置POJO
1.@TableName(“demo_user”) 指定表名
2.@TableId(type = IdType.AUTO) 主键自增
3.@TableField(“age”) 实现属性与字段映射
@Data
@AllArgsConstructor
@NoArgsConstructor
@Accessors(chain = true)
@TableName("demo_user")//指定表名
public class User implements Serializable {
@TableId(type = IdType.AUTO)//主键自增
private Integer id;
private String name;
//@TableField("age") //实现属性与字段映射
private Integer age;
private String sex;
}
配置Mapper
继承baseMapper
注意:泛型不能省略
public interface UserMapper extends baseMapper测试{ List findAll(); }
测试类注解:@SpringBootTest
@SpringBootTest
class SpringbootSsm2ApplicationTests {
@Autowired
private UserMapper userMapper;
@Test
void contextLoads() {
User user = new User();
user.setAge(18).setName("rose").setSex("女");
userMapper.insert(user);
}
}
条件构造器
1.QueryWrapper,条件构造器 动态拼接where条件
2.默认的关系链接符 and
@Test
public void selectByNS(){
User user = new User();
user.setName("大乔").setSex("女");
// QueryWrapper:条件构造器
QueryWrapper queryWrapper=new QueryWrapper<>(user);
List list = userMapper.selectList(queryWrapper);
System.out.println(user);
}
利用构造器创造条件
1.eq = 2.gt > 3.lt< 4.ge >= 5.le <= 6.ne <>
@Test//利用构造器创造条件 name=大乔 and sex=女
public void selectByNS2(){
QueryWrapper queryWrapper=new QueryWrapper<>();
queryWrapper.eq("name", "大乔")
.eq("sex", "女");
List list = userMapper.selectList(queryWrapper);
System.out.println(list);
}
@Test//利用构造器创造条件 age>18 and sex=男
public void selectByAS(){
QueryWrapper queryWrapper=new QueryWrapper<>();
queryWrapper.gt("age", 18)
.eq("sex", "男");
List list = userMapper.selectList(queryWrapper);
System.out.println(list);
}
@Test//利用构造器创造条件 name like %君% and sex=女
public void selectByLikeNS(){
QueryWrapper queryWrapper=new QueryWrapper<>();
queryWrapper.like("name", "君")
// .likeLeft("name", "君") 表示左侧百分号 %君
.eq("sex", "女");
List list = userMapper.selectList(queryWrapper);
System.out.println(list);
}
@Test//利用构造器创造条件 id in (1,3,4,5) 根据年龄降序排列
public void selectByIds(){
Integer[] ids = {1,3,4,5};//必须使用包装类型
QueryWrapper queryWrapper=new QueryWrapper<>();
queryWrapper.in("id", ids)
.orderByDesc("age");
List list = userMapper.selectList(queryWrapper);
System.out.println(list);
}
@Test//利用构造器创造条件 只获取第一列字段信息,做关联查询时候可以使用
public void selectObjs(){
QueryWrapper queryWrapper=new QueryWrapper<>();
queryWrapper.eq("sex", "女");
List 


