当前位置: 首页 > news >正文

武夷山网站制作什么网站专做外贸

武夷山网站制作,什么网站专做外贸,北京正邦设计公司官网,html5自建网站上一章我们处理的基本的构建接入#xff0c;以及插入的处理#xff0c;那么接下来我们进行查询的操作处理。 我们继续在IoTDBSessionConfig工具类中加入查询的方法处理 /*** description: 根据SQL查询最新一条数据* author:zgy* param sql sql查询语句#xff0c;count查询…上一章我们处理的基本的构建接入以及插入的处理那么接下来我们进行查询的操作处理。 我们继续在IoTDBSessionConfig工具类中加入查询的方法处理 /*** description: 根据SQL查询最新一条数据* author:zgy* param sql sql查询语句count查询语句一般为count(id) as ct 必须加as* return*/public MapString,Object queryMapData(String sql) {MapString,Object rtMap new HashMap();try {SessionDataSet sessionDataSetWrapper session.executeQueryStatement(sql,timeoutInMs);ListString columnNames sessionDataSetWrapper.getColumnNames();ListMapString,Object rtList packagingData(sessionDataSetWrapper,columnNames);if(!rtList.isEmpty()){rtMap rtList.get(0);}}catch (Exception e) {logger.error(查询Map返回数据集数据异常,异常SQL{};{},sql,e.toString());}return rtMap;}/*** description: 根据SQL查询最新一条数据* author:zgy* param sql sql查询语句查询条件最前面加 last* param clazz 类* return*/public IoTDBRecordable queryLastData(String sql, Class? extends IoTDBRecordable clazz) {MapString,Object rtMap new HashMap();try {IoTTableName iotTableName clazz.getAnnotation(IoTTableName.class);String tableName iotTableName.value();SessionDataSet sessionDataSetWrapper session.executeQueryStatement(sql,timeoutInMs);ListString columnNames sessionDataSetWrapper.getColumnNames().subList(1,sessionDataSetWrapper.getColumnNames().size());ListMapString,Object rtList packagingData(sessionDataSetWrapper,columnNames);for(MapString,Object map : rtList){if(map.get(TIMESERIES)!null){rtMap.put(map.get(TIMESERIES).toString().replace(tableName.,),map.get(Value));}}}catch (Exception e) {logger.error(MSG_SQL,clazz,sql,e.toString());}return JSON.parseObject(JSON.toJSONString(rtMap),clazz);}/*** description: 根据SQL查询最新一条数据* author:zgy* param sql sql查询语句查询条件最前面加 last* param tableName IoTDB表名* return*/public MapString,Object queryLastData(String sql,String tableName) {MapString,Object rtMap new HashMap();try {SessionDataSet sessionDataSetWrapper session.executeQueryStatement(sql,timeoutInMs);ListString columnNames sessionDataSetWrapper.getColumnNames().subList(1,sessionDataSetWrapper.getColumnNames().size());ListMapString,Object rtList packagingData(sessionDataSetWrapper,columnNames);for(MapString,Object map : rtList){if(map.get(TIMESERIES)!null){rtMap.put(map.get(TIMESERIES).toString().replace(tableName.,),map.get(Value));}}}catch (Exception e) {logger.error(MSG_SQL,tableName,sql,e.toString());}return rtMap;}/*** description: 根据SQL查询* author: zgy* param sql sql查询语句* param clazz 类.* return*/public List? queryListData(String sql, Class? extends IoTDBRecordable clazz) {ListIoTDBRecordable rtList new ArrayList();try {//获取实体类注释表名IoTTableName iotTableName clazz.getAnnotation(IoTTableName.class);String tableName iotTableName.value();//获取查询条件是否是*全查String selectParam sql.substring(6, sql.indexOf(from)).trim();SessionDataSet sessionDataSetWrapper session.executeQueryStatement(sql,timeoutInMs);ListString columnNames sessionDataSetWrapper.getColumnNames();//判断如果第一个列值为Time时间戳去掉if(Objects.equals(columnNames.get(0),Time)){columnNames.remove(0);}ListMapString,Object list packagingData(sessionDataSetWrapper,columnNames);for(MapString,Object map : list){//如果是*全查需要进行key值得转换if(Objects.equals(*,selectParam)){MapString,Object rtMap new HashMap();//循环进行key值得转换for(Map.EntryString,Object it : map.entrySet()){rtMap.put(it.getKey().replace(tableName.,),it.getValue());}//map转换实体rtList.add(JSON.parseObject(JSON.toJSONString(rtMap),clazz));}else{//如果不为*则依照别名来查//map转换实体rtList.add(JSON.parseObject(JSON.toJSONString(map),clazz));}}}catch (Exception e) {logger.error([{}]查询列表数据异常,异常SQL{};{},clazz,sql,e.toString());}return rtList;}/*** 根据SQL查询 List集合* param sql 查询条件* param tableName 表名* return*/public ListMapString,Object query(String sql,String tableName) {ListMapString,Object rtList new ArrayList();try {SessionDataSet sessionDataSetWrapper session.executeQueryStatement(sql,timeoutInMs);//获取查询条件是否是*全查String selectParam sql.substring(6, sql.indexOf(from)).trim();ListString columnNames sessionDataSetWrapper.getColumnNames();//判断如果第一个列值为Time时间戳去掉if(Objects.equals(columnNames.get(0),Time)){columnNames.remove(0);}ListMapString,Object itsList packagingData(sessionDataSetWrapper,columnNames);for(MapString,Object map : itsList){//如果是*全查需要进行key值得转换if(Objects.equals(*,selectParam)){MapString,Object rtMap new HashMap();//循环进行key值得转换for(Map.EntryString,Object it : map.entrySet()){rtMap.put(it.getKey().replace(tableName.,),it.getValue());}//map转换实体rtList.add(rtMap);}else{//如果不为*则依照别名来查//map转换实体rtList.add(map);}}} catch (Exception e) {logger.error(MSG_SQL,tableName,sql,e.toString());return rtList;}return rtList;}/*** 封装处理数据* param sessionDataSet* param titleList* throws StatementExecutionException* throws IoTDBConnectionException*/private ListMapString,Object packagingData(SessionDataSet sessionDataSet, ListString titleList)throws StatementExecutionException, IoTDBConnectionException {int fetchSize sessionDataSet.getFetchSize();ListMapString,Object rtList new ArrayList();if (fetchSize 0) {while (sessionDataSet.hasNext()) {MapString,Object rtMap new HashMap();RowRecord next sessionDataSet.next();ListField fields next.getFields();String timeString new java.text.SimpleDateFormat(yyyy-MM-dd HH:mm:ss).format(next.getTimestamp());rtMap.put(time,timeString);for (int i 0; i fields.size(); i) {Field field fields.get(i);// 这里的需要按照类型获取if(field.getDataType()null||field.getObjectValue(field.getDataType())null){rtMap.put(titleList.get(i), null);}else{rtMap.put(titleList.get(i), field.getObjectValue(field.getDataType()).toString());}}rtList.add(rtMap);}}return rtList;} 1、queryMapData 方法的话就是查询结果为Map集合的处理比如聚合函数的查询等等。 2、queryLastData 方法为根据SQL查询表中最新的一条记录数返回实体类。 3、queryLastData 方法为根据sql和表名查询一个Map集合 4、queryListData 根据sql查询一个list实体集合 5、query 根据sql查询一个ListMap集合 下面为测试代码 System.out.println(1、queryMapData查询......);MapString,Object mapOne iotDBSessionConfig.queryMapData(select count(id) as ct from root.syslog);System.out.println(结果ArrayUtils.toString(mapOne));System.out.println(2、queryLastData 根据sql和实体类查询......);IoTDBSysLog ioTDBSysLog (IoTDBSysLog) iotDBSessionConfig.queryLastData(select last * from root.syslog,IoTDBSysLog.class);System.out.println(结果ioTDBSysLog.getLogIp()--ioTDBSysLog.getCreateTime());System.out.println(3、queryLastData 根据sql和表名查询......);MapString,Object mapThree iotDBSessionConfig.queryLastData(select last * from root.syslog, IoTDBTableParam.SYSLOG_IOT_TABLE);System.out.println(结果ArrayUtils.toString(mapThree));System.out.println(4、queryListData 根据sql查询一个list实体集合......);ListIoTDBSysLog list (ListIoTDBSysLog) iotDBSessionConfig.queryListData(select * from root.syslog,IoTDBSysLog.class);System.out.println(结果条数list.size());for (IoTDBSysLog sysLog : list){System.out.println(sysLog.getLogIp()--sysLog.getCreateTime());}System.out.println(5、query 根据sql查询一个ListMap集合......);ListMapString,Object listTwo iotDBSessionConfig.query(select * from root.syslog, IoTDBTableParam.SYSLOG_IOT_TABLE);System.out.println(结果条数list.size());for (MapString,Object map : listTwo){System.out.println(map.get(logIp)--map.get(createTime));} 结果如下 其中3,5两个方法是因为项目中需要进行添加的是根据动态传递的参数来识别对应的表名简单进行了包装处理如果搭建有更好的方法可以留言交流。
http://www.hkea.cn/news/14523390/

相关文章:

  • 注册功能网站建设惠州做棋牌网站建设有哪些公司
  • 网站seo诊断报告例子网店推广计划书
  • 无锡教育论坛网站建设成都企业网站商城定制
  • 设计参考网站推荐诚信网站平台建设方案
  • 外包做一个网站一般费用微信登录wordpress
  • 做网站还 淘宝python生成网页
  • 国外优秀的字体设计网站wordpress主题自定义
  • 江门自助建站模板大连发现2例阳性
  • 建筑网站的研究背景与意义论坛网站备案流程图
  • 中文网站怎么做英文版深圳市建筑工程交易服务
  • 大连网站建设方法icp对网站内容
  • 一个人可以完成网站建设吗微信推广小程序
  • 做行业网站赚钱吗公司两个网站可以做友情链接吗
  • 如何自己制作一个网站可以制作试卷的app
  • 如何实现输入域名访问网站首页wordpress 免费中文企业主题下载
  • 广州网站制作(信科网络)深圳建站模板
  • 关于建设网站的合作合同范本销售新品牌如何推广
  • 微官网和公众号的区别深圳优化网站排名
  • 公司网站建设代理河北做网站的
  • 南京做网站公司地点工程人才招聘网
  • 陕西省住房和城乡建设部网站官网爱网卡
  • 企业做淘宝客网站网站开发如何赚钱
  • 音乐网站html模板河北网站建设业务
  • 长春关键词推广宁波seo排名费用
  • 要写网站建设方案促销策划方案
  • 海南营销网站建设黄页号码查询
  • 合肥网站建设优化学习网站关键字选择标准
  • 网站开发 企业 定制系统中国建设网网站
  • 深圳网站优化教程学者网学科建设网站
  • 石岩做网站的公司做网站最快多久