一,获取单个
代码依次为controller->service->serviceImpl->mapper->xml
@GetMapping("/{id}")
public Result getDept(@PathVariable Integer id){
log.info("根据id查询部门{}",id);
List<Dept> depList = deptService.getDept(id);
return Result.success(depList);
}
Emp getById(Integer id);
@Override
public List<Dept> getDept(Integer id) {
return deptMapper.getDept(id);
}
@Select("select * from dept where id = #{id}")
List<Dept> getDept(Integer id)
二,查询所有
代码依次为controller->service->serviceImpl->mapper->xml
@Autowired
private DeptService deptService;
/**
* 获取部门列表
*/
@GetMapping
public Result list(){
log.info("查询所有部门");
List<Dept> depList = deptService.list();
return Result.success(depList);
};
//查询全部部门数据
List<Dept> list();
//获取列表
@Override
public List<Dept> list() {
return deptMapper.list();
}
@Select("select * from dept order by update_time DESC ")
List<Dept> list();
三,条件&&分页查询
代码依次为controller->service->serviceImpl->mapper->xml
1.引入pageHelper依赖
<!--PageHelper分页插件-->
<dependency>
<groupId>com.github.pagehelper</groupId>
<artifactId>pagehelper-spring-boot-starter</artifactId>
<version>1.4.2</version>
</dependency>
2.封装page实体类
@Data
@NoArgsConstructor
@AllArgsConstructor
public class PageBean {
private Long total;
private List rows;//数据列表
}
3.编码
如果不是条件查询后面几个字段可以不加
@GetMapping("/emps")
public Result page(@RequestParam(defaultValue = "1") Integer page,
@RequestParam(defaultValue = "10") Integer pageSize,
String name, Short gender,
@DateTimeFormat(pattern = "yyyy-MM-dd") LocalDate begin, @DateTimeFormat(pattern = "yyyy-MM-dd") LocalDate end) {
log.info("分页查询{},{}", page, pageSize);
PageBean pageBean = empService.page(page, pageSize, name, gender, begin, end);
return Result.success(pageBean);
}
PageBean page(Integer page, Integer pageSize, String name, Short gender, LocalDate begin, LocalDate end);
public PageBean page(Integer page, Integer pageSize, String name, Short gender, LocalDate begin, LocalDate end) {
//1. 设置分页参数
PageHelper.startPage(page, pageSize);
//2. 执行查询
List<Emp> empList = empMapper.list(name, gender, begin, end);
Page<Emp> p = (Page<Emp>) empList;
//3. 封装PageBean对象
PageBean pageBean = new PageBean(p.getTotal(), p.getResult());
return pageBean;
}
public List<Emp> list(String name, Short gender,LocalDate begin, LocalDate end);
<select id="list" resultType="com.yy.tilas.pojo.Emp">
select *
from emp
<where>
<if test="name != null and name != ''">
name like concat('%',#{name},'%')
</if>
<if test="gender != null">
and gender = #{gender}
</if>
<if test="begin != null and end != null">
and entrydate between #{begin} and #{end}
</if>
</where>
order by update_time desc
</select>