通用型自定义拼接sql脚本,摆脱重复工作量
在开发 Restful 接口时,我们经常需要根据前端传递的参数动态拼接 SQL 查询语句,以满足不同的查询需求。本文将介绍一个通用的自定义拼接 SQL 脚本的方法,帮助开发人员减少重复工作量。
首先,我们定义了一个名为 SqlParmDTO
的传参实体类,其中包含了需要传递给 SQL 查询的各个参数,如 where
条件、排序字段 sort
、排序方式 order
、结果集偏移量 offset
和结果集限制数量 limit
。
接下来,我们提供了一个方法 listPageBysql()
来根据传入的 SqlParmDTO
对象执行 SQL 查询,并返回分页结果。该方法首先判断是否存在唯一字段 unique
,如果不存在,则执行普通的 SQL 查询,否则执行带有去重功能的 SQL 查询。查询结果封装在 PageInfo
对象中返回。
在 MyBatis 的 XML 配置文件中,我们定义了四个 SQL 查询语句,分别是 selectSql
、selectSqlCount
、selectUniqueSql
和 selectUniqueSqlCount
。这些查询语句根据传入的参数动态拼接 SQL 语句,并执行相应的查询操作。
以下就是通用型自定义拼接 SQL 脚本的示例代码。通过这种方式,开发人员可以根据不同的查询需求,灵活地拼接 SQL 语句,从而