多条件分页查询 - PageHelper
1. Maven配置插件
<dependency>
<groupId>com.github.pagehelper</groupId>
<artifactId>pagehelper</artifactId>
<version>${pagehelper.version}</version>
</dependency>
2. 准备数据库信息
![在这里插入图片描述](https://img-blog.csdnimg.cn/504e17dcb53b45bcab6a7827138c8837.png?x-oss-process=image/watermark,type_ZmFuZ3poZW5naGVpdGk,shadow_10,text_aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L2NocmlzbXVycGh5,size_16,color_FFFFFF,t_70#pic_center)
3. 准备实体类
public class Drug {
private Integer dr_id;
private String dr_url;
private Long dr_inPrice;
private Long dr_outPrice;
private String dr_name;
private String dr_type;
private String dr_simpleDesc;
private String dr_expiration;
private String dr_detaDesc;
private String dr_factory;
private String dr_direction;
private String dr_remark;
private Integer dr_number;
private Integer dr_state;
@Override
public String toString() {
return "Drug{" +
"dr_id=" + dr_id +
", dr_url='" + dr_url + '\'' +
", dr_inPrice=" + dr_inPrice +
", dr_outPrice=" + dr_outPrice +
", dr_name='" + dr_name + '\'' +
", dr_type='" + dr_type + '\'' +
", dr_simpleDesc='" + dr_simpleDesc + '\'' +
", dr_expiration='" + dr_expiration + '\'' +
", dr_detaDesc='" + dr_detaDesc + '\'' +
", dr_factory='" + dr_factory + '\'' +
", dr_direction='" + dr_direction + '\'' +
", dr_remark='" + dr_remark + '\'' +
", dr_number=" + dr_number +
", dr_state=" + dr_state +
'}';
}
4. 封装结果类
public class ResultVo<T> {
private PageInfo<T> pageInfo;
private List<T> list;
private T obj;
private Integer code = 200;
private String msg = "OK";
public ResultVo() {
}
public ResultVo(PageInfo<T> pageInfo) {
this.pageInfo = pageInfo;
}
public ResultVo(List<T> list) {
this.list = list;
}
public ResultVo(T obj) {
this.obj = obj;
}
public ResultVo(Integer code, String msg) {
this.code = code;
this.msg = msg;
}
5. 封装查询类
public class QueryDrugVo {
private Integer dr_id;
private String dr_name;
private String dr_type;
6. 在 DrugMapper.java / DrugMapper.xml 文件中编写SQL语句
List<Drug> queryByVo(QueryDrugVo vo);
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
<mapper namespace="com.murphy.mapper.DrugMapper">
<resultMap id="BaseResultMap" type="com.murphy.pojo.Drug">
<id column="dr_id" jdbcType="INTEGER" property="dr_id"/>
<result column="dr_url" jdbcType="VARCHAR" property="dr_url"/>
<result column="dr_inPrice" jdbcType="DECIMAL" property="dr_inPrice"/>
<result column="dr_outPrice" jdbcType="DECIMAL" property="dr_outPrice"/>
<result column="dr_name" jdbcType="VARCHAR" property="dr_name"/>
<result column="dr_type" jdbcType="VARCHAR" property="dr_type"/>
<result column="dr_simpleDesc" jdbcType="VARCHAR" property="dr_simpleDesc"/>
<result column="dr_expiration" jdbcType="VARCHAR" property="dr_expiration"/>
<result column="dr_detaDesc" jdbcType="VARCHAR" property="dr_detaDesc"/>
<result column="dr_factory" jdbcType="VARCHAR"