废话不多:抄袭代码

package com.webank.wedatasphere.qualitis.handler;

import com.webank.wedatasphere.qualitis.response.Grid;
import com.webank.wedatasphere.qualitis.response.SelectRuleResponse;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.jdbc.core.JdbcTemplate;
import org.springframework.stereotype.Component; import java.util.List; @Component
public class CommonJDBCService {
// 公共的JDBC服务 @Autowired
private JdbcTemplate jdbcTemplate; /**
* 分页查询 规则颗粒度---细粒自定义
*/
public Grid<?> queryRuleDataGridByPageInSqlWhere(int pageNumber, int pageSize){
String querySql = "select a.id,a.create_time,a.rule_template_name,a.cn_name,b.cluster_name,b.db_name,\n" +
"b.table_name,b.col_name,b.col_name,b.filter \n" +
"from qualitis_rule a \n" +
"left join qualitis_rule_datasource b on a.id = b.rule_id \n" +
"where a.project_id is null order by a.id asc";
String countSql= "select count(1) \n" +
"from qualitis_rule a \n" +
"left join qualitis_rule_datasource b on a.id = b.rule_id \n" +
"where a.project_id is null ";
int offset = (pageNumber - 1) * pageSize;
querySql = querySql + " limit " + offset + " , " + pageSize;
List<SelectRuleResponse> resultSets = jdbcTemplate.query(querySql, new Object[]{}, (resultSet, i) -> {
SelectRuleResponse selectRuleResponse = new SelectRuleResponse();
selectRuleResponse.setId(resultSet.getLong("id"));
selectRuleResponse.setRuleTemplateName(resultSet.getString("rule_template_name"));
selectRuleResponse.setCnName(resultSet.getString("cn_name"));
selectRuleResponse.setDatasourceName(resultSet.getString("cluster_name"));
selectRuleResponse.setDbName(resultSet.getString("db_name"));
selectRuleResponse.setTableName(resultSet.getString("table_name"));
selectRuleResponse.setTableFields(resultSet.getString("col_name"));
selectRuleResponse.setSqlWhere(resultSet.getString("filter"));
selectRuleResponse.setCreateTime(resultSet.getString("create_time"));
return selectRuleResponse;
});
Integer total = jdbcTemplate.queryForObject(countSql, Integer.class);
return Grid.OkPage(resultSets, total == null ? 0 : total); } }

JdbcTemplate 自定义返回的结果集字段和实体类映射的更多相关文章

  1. 使用Dynamics 365 CE Web API查询数据加点料及选项集字段常用查询

    微软动态CRM专家罗勇 ,回复336或者20190516可方便获取本文,同时可以在第一间得到我发布的最新博文信息,follow me. 紧接上文:配置Postman通过OAuth 2 implicit ...

  2. Spring data jpa中Query和@Query分别返回map结果集

    引用: http://blog.csdn.net/yingxiake/article/details/51016234 http://blog.csdn.net/yingxiake/article/d ...

  3. jpa多表leftjoin 查询,自定义返回结果

    sql代码 自定义返回结果 package com.cdp.ecosaas.coredb.uua.sync.vo; import java.io.Serializable; public class ...

  4. spring jdbcTemplate query 返回值为null

    spring jdbcTemplate query 返回值为null 今天使用以下方法从数据库中查询数据,返回列表 public List<BookBean> getBooks(){ St ...

  5. django rest 自定义返回数据接口和异常处理

    参考 Django rest framework自定义返回数据格式 一.简介 drf 默认返回的异常格式是这样的 1 { 2 "username": [ 3 "该字段是必 ...

  6. 《Entity Framework 6 Recipes》中文翻译系列 (14) -----第三章 查询之查询中设置默认值和存储过程返回多结果集

    翻译的初衷以及为什么选择<Entity Framework 6 Recipes>来学习,请看本系列开篇 3-6在查询中设置默认值 问题 你有这样一个用例,当查询返回null值时,给相应属性 ...

  7. iOS 自定义返回按钮,保留系统滑动返回

    原文链接 自定义返回按钮保留系统滑动返回手势.gif 1.简介 使用苹果手机,最喜欢的就是用它的滑动返回.作为一个开发者,我们在编写很多页面的时候,总是会因为这样那样的原因使得系统的滑动返回不可用.使 ...

  8. 关于FireDAC返回多结果集的问题

    以前使用ADO, 如果SQL返回的结果集有多个 可以通过NextRecordset来依次获取 代码移植到FireDAC, 对于多结果集处理差不多, 但是还是有一些不一样的地方: 1.TDataSet本 ...

  9. oracle返回多结果集

    kavy 原文 oracle返回多结果集 Oracle存储过程: create or replace procedure P_Sel_TopCount2(in_top in number, out_c ...

  10. C# 返回json结果集,js日期格式化

    asp.net mvc返回json结果集 return Json(new { total = totalCount, rows = result }, JsonRequestBehavior.Allo ...

随机推荐

  1. spark (三) hadoop上传文件并运行spark

    目录 1. 上传文件到hdfs 2. 运行wordCount 2.1 spark-shell运行 2.2 spark-submit运行example(stand-alone) 2.3 spark-su ...

  2. MTK8766 LK GPIO初始化状态设置分析

    问题来源是M.2 Dongle的LED灯在kernel起来之前就亮了,kernel起来之后又初始化成熄灭状态.通过排查硬件规格书.GPIO表格,大概判定是前期软件初始化不正确造成的.通过观察串口打印的 ...

  3. cpa-会计

    会计整体介绍 1.总结 2.会计政策.会计估计及其变更和差错更正 3.存货 4.固定资产 5.无形资产 6.投资性房地产 7.长期股权投资与合营安排 8.资产减值 9.负债 10.职工薪酬 11.借款 ...

  4. Mac安装brew的四种方法(指定能行)

    一,执行brew官网命令安装brew https://brew.sh/ 官网中复制下图中命令,在terminal中输入该命令,即: /bin/bash -c "$(curl -fsSL ht ...

  5. 使用GraalVM将SpringBoot工程编译成平台原生的可执行文件

    原文链接:https://blog.liuzijian.com/post/209e68d0-a418-1737-503a-d47e6d2d9350.html 1.GraalVM GraalVM (ht ...

  6. delphi中实现http请求和提交

    在对接本地的一个药械监管系统使用实现的代码,编译环境delphi Xe7 ,使用类TIdHTTP实现网络的get请求和post提交 //设置组件的属性 procedure TfrmMain.SetHt ...

  7. Nodify学习 二:添加节点

    Nodify学习 一:介绍与使用 - 可乐_加冰 - 博客园 (cnblogs.com) Nodify学习 二:添加节点 - 可乐_加冰 - 博客园 (cnblogs.com) 添加节点(nodes) ...

  8. 在SOUI4中工作线程如果与UI线程交互

    在SOUI4中工作线程如果与UI线程交互 很多时候程序的耗时过程需要在工作线程执行,执行过程中可能需要通过UI线程来展示运行状态及结果,这就涉及到工作线程与UI线程交互的问题. SOUI的UI框架本身 ...

  9. Flink批处理-简单案例-01

    一.简单案例 <?xml version="1.0" encoding="UTF-8"?> <project xmlns="http ...

  10. USACO24DEC 2D Conveyer Belt S [ 蓝 ] [ 图论建模 ] [ Flood Fill ]

    2D Conveyer Belt:图论建模+洪水填充妙妙题.质量极高. 观察 首先面对这种不断往图里面加点或者边,且满足前面的答案可以由加边后推出的题,第一个想到的就得是倒序枚举加边过程的 trick ...