一,获取单个

代码依次为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>

Logo

魔乐社区(Modelers.cn) 是一个中立、公益的人工智能社区,提供人工智能工具、模型、数据的托管、展示与应用协同服务,为人工智能开发及爱好者搭建开放的学习交流平台。社区通过理事会方式运作,由全产业链共同建设、共同运营、共同享有,推动国产AI生态繁荣发展。

更多推荐