IPage<DasymesCstuffPlanDeliverPojo> query(Page<DasymesCstuffPlanDeliverPojo> page, @Param("param") DasymesCstufffPlanDeliverParamPojo paramPojo)
时间: 2024-02-24 19:54:51 浏览: 65
这是一个MyBatis Plus中的Mapper接口方法,其中`@Param("param")`表示给参数`DasymesCstufffPlanDeliverParamPojo`指定了别名`param`,用于在SQL语句中引用该参数。
这个方法的作用是查询`DasymesCstuffPlanDeliverPojo`对象列表,并将结果封装到`IPage<DasymesCstuffPlanDeliverPojo>`对象中。其中`page`参数表示分页信息,`paramPojo`参数表示查询条件。
在SQL语句中,可以使用`#{}`语法来引用参数,例如:
```xml
<select id="query" resultType="DasymesCstuffPlanDeliverPojo">
SELECT * FROM dasymes_cstuff_plan_deliver
WHERE 1 = 1
<if test="param.planId != null">
AND plan_id = #{param.planId}
</if>
<if test="param.deliverName != null">
AND deliver_name = #{param.deliverName}
</if>
...
LIMIT #{page.offset}, #{page.size}
</select>
```
这里使用了`<if>`标签来判断查询条件是否为空,如果不为空则拼接到SQL语句中。`#{page.offset}`和`#{page.size}`表示分页信息,MyBatis Plus会自动将分页信息注入到SQL语句中,从而实现分页查询。
在调用`query`方法时,需要传入`Page<DasymesCstuffPlanDeliverPojo>`对象和`DasymesCstufffPlanDeliverParamPojo`对象,例如:
```java
Page<DasymesCstuffPlanDeliverPojo> page = new Page<>(1, 10);
DasymesCstufffPlanDeliverParamPojo param = new DasymesCstufffPlanDeliverParamPojo();
param.setPlanId(1L);
param.setDeliverName("张三");
IPage<DasymesCstuffPlanDeliverPojo> result = dasymesCstuffPlanDeliverMapper.query(page, param);
```
这里传入了分页信息和查询条件参数,MyBatis Plus会自动将它们注入到SQL语句中,然后执行查询操作。
阅读全文