ShardingSphere跨表查询报错

目录

    • 一、场景简介
    • 二、报错信息
    • 三、SQL
    • 四、原因
    • 五、解决
      • 方法一、调整SQL,不使用子查询
      • 方法二、将子查询的SQL独立出来,后续连接逻辑由代码处理


一、场景简介

1、使用ShardingSphere按月份进行分表

2、单月查询正常(单表)

3、跨月查询报错(跨表)


二、报错信息

### Error querying database.  Cause: java.lang.NullPointerException
### The error may exist in file [/home/xxx/devtest/robot/robot-admin-8073/webapps/RobotManagerSvr/WEB-INF/classes/mappings/RobotQuestionMapper.xml]
### The error may involve com.xxx.mapper.RobotQuestionMapper.getQuestionReportList
### The error occurred while handling results
### SQL: SELECT   t1.quesId,   t1.questionMsg,   t2.qName AS questionType,   count( t4.sId ) AS satCount,   count( t4.flag = '1' OR NULL ) AS solveCount,   count( t4.flag = '0' OR NULL ) AS unSolveCount,   ROUND(IFNULL(count( t4.flag = '1' OR NULL ) / count( t4.sId ), 0) * 100, 2) AS solvePercent,         t6.browseQty   FROM   t_robot_question AS t1   LEFT JOIN t_robot_questiontype AS t2 ON t1.qId = t2.qId   LEFT JOIN t_robot_messageReplay AS t3 ON t1.quesId = t3.quesId   LEFT JOIN t_robot_SolveRec AS t4 ON t3.recId = t4.recId   LEFT JOIN t_robot_sessionmsg AS t5 ON t3.SessionID = t5.SessionID   LEFT JOIN (             SELECT quesId, sum(IFNULL( hitQty, 0 )) AS browseQty             FROM t_robot_ques_statistics4ques             WHERE companyId = ? GROUP BY quesId         ) AS t6 ON t1.quesId = t6.quesId   WHERE   t1.companyId = ?   AND t3.CreateTime BETWEEN ? AND ?           GROUP BY   t1.quesId,   t1.questionMsg,   t2.qName         HAVING t1.quesId IS NOT NULL   ORDER BY t3.CreateTime DESC
### Cause: java.lang.NullPointerException
org.mybatis.spring.MyBatisSystemException: nested exception is org.apache.ibatis.exceptions.PersistenceException: 
### Error querying database.  Cause: java.lang.NullPointerException
### The error may exist in file [/home/xxx/devtest/robot/robot-admin-8073/webapps/RobotManagerSvr/WEB-INF/classes/mappings/RobotQuestionMapper.xml]
### The error may involve com.xxx.mapper.RobotQuestionMapper.getQuestionReportList
### The error occurred while handling results
### SQL: SELECT   t1.quesId,   t1.questionMsg,   t2.qName AS questionType,   count( t4.sId ) AS satCount,   count( t4.flag = '1' OR NULL ) AS solveCount,   count( t4.flag = '0' OR NULL ) AS unSolveCount,   ROUND(IFNULL(count( t4.flag = '1' OR NULL ) / count( t4.sId ), 0) * 100, 2) AS solvePercent,         t6.browseQty   FROM   t_robot_question AS t1   LEFT JOIN t_robot_questiontype AS t2 ON t1.qId = t2.qId   LEFT JOIN t_robot_messageReplay AS t3 ON t1.quesId = t3.quesId   LEFT JOIN t_robot_SolveRec AS t4 ON t3.recId = t4.recId   LEFT JOIN t_robot_sessionmsg AS t5 ON t3.SessionID = t5.SessionID   LEFT JOIN (             SELECT quesId, sum(IFNULL( hitQty, 0 )) AS browseQty             FROM t_robot_ques_statistics4ques             WHERE companyId = ? GROUP BY quesId         ) AS t6 ON t1.quesId = t6.quesId   WHERE   t1.companyId = ?   AND t3.CreateTime BETWEEN ? AND ?           GROUP BY   t1.quesId,   t1.questionMsg,   t2.qName         HAVING t1.quesId IS NOT NULL   ORDER BY t3.CreateTime DESC
### Cause: java.lang.NullPointerExceptionat org.mybatis.spring.MyBatisExceptionTranslator.translateExceptionIfPossible(MyBatisExceptionTranslator.java:77)at org.mybatis.spring.SqlSessionTemplate$SqlSessionInterceptor.invoke(SqlSessionTemplate.java:446)at com.sun.proxy.$Proxy99.selectList(Unknown Source)at org.mybatis.spring.SqlSessionTemplate.selectList(SqlSessionTemplate.java:230)at org.apache.ibatis.binding.MapperMethod.executeForMany(MapperMethod.java:137)at org.apache.ibatis.binding.MapperMethod.execute(MapperMethod.java:75)at org.apache.ibatis.binding.MapperProxy.invoke(MapperProxy.java:59)at com.sun.proxy.$Proxy161.getQuestionReportList(Unknown Source)at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)at java.lang.reflect.Method.invoke(Method.java:498)at org.springframework.aop.support.AopUtils.invokeJoinpointUsingReflection(AopUtils.java:343)at org.springframework.aop.framework.ReflectiveMethodInvocation.invokeJoinpoint(ReflectiveMethodInvocation.java:198)at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:163)at org.springframework.dao.support.PersistenceExceptionTranslationInterceptor.invoke(PersistenceExceptionTranslationInterceptor.java:139)at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:186)at org.springframework.aop.framework.JdkDynamicAopProxy.invoke(JdkDynamicAopProxy.java:212)at com.sun.proxy.$Proxy162.getQuestionReportList(Unknown Source)at com.xxx.service.Impl.RobotQuestionServiceImpl.getQuestionReportList(RobotQuestionServiceImpl.java:656)at com.xxx.service.Impl.RobotQuestionServiceImpl$$FastClassBySpringCGLIB$$41e86926.invoke(<generated>)at org.springframework.cglib.proxy.MethodProxy.invoke(MethodProxy.java:218)at org.springframework.aop.framework.CglibAopProxy$DynamicAdvisedInterceptor.intercept(CglibAopProxy.java:684)at com.xxx.service.Impl.RobotQuestionServiceImpl$$EnhancerBySpringCGLIB$$37dbcb67.getQuestionReportList(<generated>)at com.xxx.controller.RobotQuestionController.getQuestionReportList(RobotQuestionController.java:1094)at com.xxx.controller.RobotQuestionController$$FastClassBySpringCGLIB$$abadd88e.invoke(<generated>)at org.springframework.cglib.proxy.MethodProxy.invoke(MethodProxy.java:218)at org.springframework.aop.framework.CglibAopProxy$CglibMethodInvocation.invokeJoinpoint(CglibAopProxy.java:749)at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:163)at org.springframework.aop.framework.adapter.AfterReturningAdviceInterceptor.invoke(AfterReturningAdviceInterceptor.java:55)at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:175)at org.springframework.aop.interceptor.ExposeInvocationInterceptor.invoke(ExposeInvocationInterceptor.java:93)at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:186)at org.springframework.aop.framework.CglibAopProxy$DynamicAdvisedInterceptor.intercept(CglibAopProxy.java:688)at com.xxx.controller.RobotQuestionController$$EnhancerBySpringCGLIB$$a3088a72.getQuestionReportList(<generated>)at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)at java.lang.reflect.Method.invoke(Method.java:498)at org.springframework.web.method.support.InvocableHandlerMethod.doInvoke(InvocableHandlerMethod.java:189)at org.springframework.web.method.support.InvocableHandlerMethod.invokeForRequest(InvocableHandlerMethod.java:138)at org.springframework.web.servlet.mvc.method.annotation.ServletInvocableHandlerMethod.invokeAndHandle(ServletInvocableHandlerMethod.java:102)at org.springframework.web.servlet.mvc.method.annotation.RequestMappingHandlerAdapter.invokeHandlerMethod(RequestMappingHandlerAdapter.java:895)at org.springframework.web.servlet.mvc.method.annotation.RequestMappingHandlerAdapter.handleInternal(RequestMappingHandlerAdapter.java:800)at org.springframework.web.servlet.mvc.method.AbstractHandlerMethodAdapter.handle(AbstractHandlerMethodAdapter.java:87)at org.springframework.web.servlet.DispatcherServlet.doDispatch(DispatcherServlet.java:1038)at org.springframework.web.servlet.DispatcherServlet.doService(DispatcherServlet.java:942)at org.springframework.web.servlet.FrameworkServlet.processRequest(FrameworkServlet.java:1005)at org.springframework.web.servlet.FrameworkServlet.doPost(FrameworkServlet.java:908)at javax.servlet.http.HttpServlet.service(HttpServlet.java:648)at org.springframework.web.servlet.FrameworkServlet.service(FrameworkServlet.java:882)at javax.servlet.http.HttpServlet.service(HttpServlet.java:729)at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:292)at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:207)at org.apache.tomcat.websocket.server.WsFilter.doFilter(WsFilter.java:52)at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:240)at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:207)at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:101)at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:240)at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:207)at com.xxx.filter.XssFilter.doFilter(XssFilter.java:53)at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:240)at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:207)at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:320)at org.springframework.security.web.access.intercept.FilterSecurityInterceptor.invoke(FilterSecurityInterceptor.java:127)at org.springframework.security.web.access.intercept.FilterSecurityInterceptor.doFilter(FilterSecurityInterceptor.java:91)at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:334)at org.springframework.security.web.access.ExceptionTranslationFilter.doFilter(ExceptionTranslationFilter.java:119)at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:334)at org.springframework.security.web.session.SessionManagementFilter.doFilter(SessionManagementFilter.java:137)at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:334)at org.springframework.security.web.authentication.AnonymousAuthenticationFilter.doFilter(AnonymousAuthenticationFilter.java:111)at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:334)at org.springframework.security.web.servletapi.SecurityContextHolderAwareRequestFilter.doFilter(SecurityContextHolderAwareRequestFilter.java:170)at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:334)at org.springframework.security.web.savedrequest.RequestCacheAwareFilter.doFilter(RequestCacheAwareFilter.java:63)at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:334)at com.xxx.jwt.JwtAuthenticationTokenFilter.doFilterInternal(JwtAuthenticationTokenFilter.java:145)at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:107)at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:334)at org.springframework.security.web.authentication.logout.LogoutFilter.doFilter(LogoutFilter.java:116)at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:334)at org.springframework.web.filter.CorsFilter.doFilterInternal(CorsFilter.java:96)at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:107)at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:334)at org.springframework.security.web.header.HeaderWriterFilter.doFilterInternal(HeaderWriterFilter.java:74)at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:107)at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:334)at org.springframework.security.web.context.SecurityContextPersistenceFilter.doFilter(SecurityContextPersistenceFilter.java:105)at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:334)at org.springframework.security.web.context.request.async.WebAsyncManagerIntegrationFilter.doFilterInternal(WebAsyncManagerIntegrationFilter.java:56)at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:107)at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:334)at org.springframework.security.web.FilterChainProxy.doFilterInternal(FilterChainProxy.java:215)at org.springframework.security.web.FilterChainProxy.doFilter(FilterChainProxy.java:178)at org.springframework.web.filter.DelegatingFilterProxy.invokeDelegate(DelegatingFilterProxy.java:357)at org.springframework.web.filter.DelegatingFilterProxy.doFilter(DelegatingFilterProxy.java:270)at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:240)at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:207)at org.springframework.boot.web.servlet.support.ErrorPageFilter.doFilter(ErrorPageFilter.java:130)at org.springframework.boot.web.servlet.support.ErrorPageFilter.access$000(ErrorPageFilter.java:66)at org.springframework.boot.web.servlet.support.ErrorPageFilter$1.doFilterInternal(ErrorPageFilter.java:105)at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:107)at org.springframework.boot.web.servlet.support.ErrorPageFilter.doFilter(ErrorPageFilter.java:123)at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:240)at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:207)at org.springframework.web.filter.CharacterEncodingFilter.doFilterInternal(CharacterEncodingFilter.java:200)at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:107)at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:240)at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:207)at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:212)at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:94)at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:141)at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:79)at org.apache.catalina.valves.AbstractAccessLogValve.invoke(AbstractAccessLogValve.java:620)at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:88)at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:502)at org.apache.coyote.http11.AbstractHttp11Processor.process(AbstractHttp11Processor.java:1132)at org.apache.coyote.AbstractProtocol$AbstractConnectionHandler.process(AbstractProtocol.java:684)at org.apache.tomcat.util.net.NioEndpoint$SocketProcessor.doRun(NioEndpoint.java:1539)at org.apache.tomcat.util.net.NioEndpoint$SocketProcessor.run(NioEndpoint.java:1495)at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1149)at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:624)at org.apache.tomcat.util.threads.TaskThread$WrappingRunnable.run(TaskThread.java:61)at java.lang.Thread.run(Thread.java:750)

三、SQL

<select id="getQuestionReportList" resultType="com.alibaba.fastjson.JSONObject">SELECTt1.quesId,t1.questionMsg,t2.qName AS questionType,count( t4.sId ) AS satCount,count( t4.flag = '1' OR NULL ) AS solveCount,count( t4.flag = '0' OR NULL ) AS unSolveCount,ROUND(IFNULL(count( t4.flag = '1' OR NULL ) / count( t4.sId ), 0) * 100, 2) AS solvePercent,t6.browseQtyFROMt_robot_question AS t1LEFT JOIN t_robot_questiontype AS t2 ON t1.qId = t2.qIdLEFT JOIN t_robot_messageReplay AS t3 ON t1.quesId = t3.quesIdLEFT JOIN t_robot_SolveRec AS t4 ON t3.recId = t4.recIdLEFT JOIN t_robot_sessionmsg AS t5 ON t3.SessionID = t5.SessionIDLEFT JOIN (SELECT quesId, sum(IFNULL( hitQty, 0 )) AS browseQtyFROM t_robot_ques_statistics4quesWHERE companyId = #{companyId} GROUP BY quesId) AS t6 ON t1.quesId = t6.quesIdWHEREt1.companyId = #{companyId}AND t3.CreateTime BETWEEN #{beginDate} AND #{endDate}AND t4.CreateTime BETWEEN #{beginDate} AND #{endDate}AND t5.CreateTime BETWEEN #{beginDate} AND #{endDate}GROUP BYt1.quesId,t1.questionMsg,t2.qNameORDER BY t3.CreateTime DESC
</select>

四、原因

是子查询的导致(具体原因不明)

在这里插入图片描述


五、解决

方法一、调整SQL,不使用子查询

方法二、将子查询的SQL独立出来,后续连接逻辑由代码处理

1、去除子查询

在这里插入图片描述

2、将子查询封装为mapp方法

在这里插入图片描述

3、由代码完成连接

在这里插入图片描述

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/851593.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

CA证书及PKI

文章目录 概述非对称加密User Case: 数据加密User Case: 签名验证潜在问题 CACA证书的组成CA签发证书流程CA验证签名流程CA吊销证书流程 PKI信任链证书链 概述 首先我们需要简单对证书有一个基本的概念&#xff0c;以几个问题进入了解 ❓ Question1: 什么是证书&#xff1f; 证…

福利|免费申请长期单域名、通配符、多域名SSL证书,不限量

一、什么是单域名、通配符、多域名SSL证书 单域名证书&#xff1a;仅保护一个特定的域名。 通配符证书&#xff1a;保护一个主域名及其所有二级子域名。 多域名证书&#xff1a;在同一张证书中保护多个不同的域名&#xff0c;可以是主域名也可以是子域名&#xff0c;域名之间…

目前比较好用的LabVIEW架构及其选择

LabVIEW提供了多种架构供开发者选择&#xff0c;以满足不同类型项目的需求。选择合适的架构不仅可以提高开发效率&#xff0c;还能确保项目的稳定性和可维护性。本文将介绍几种常用的LabVIEW架构&#xff0c;并根据不同项目需求和个人习惯提供选择建议。 常用LabVIEW架构 1. …

Invalid keystore format,获取安全码SHA1值出错

AndroidStudio版本&#xff1a;Android Studio Electric Eel | 2022.1.1 项目运行JDK版本&#xff1a;11.0.15&#xff0c;查看方法如下&#xff1a; 在Terminal 窗口中&#xff0c;获取的Java版本是&#xff1a;1.8.0&#xff0c;修改Java系统环境变量&#xff0c;改成&#…

如何在MySQL中创建不同的索引和用途?

目录 1 基本的 CREATE INDEX 语法 2 创建单列索引 3 创建多列索引 4 创建唯一索引 5 创建全文索引 6 在表创建时添加索引 7 使用 ALTER TABLE 添加索引 8 删除索引 9 索引管理的最佳实践 10 示例 在 MySQL 中&#xff0c;索引&#xff08;index&#xff09;是一种用于…

Git保姆级教程

目录 Git是什么&#xff0c;为什么要学这个工具&#xff1f; 码云注册并创建仓库 Git安装 查看本地仓库状态 添加到暂存区 提交到本地库 修改文件 版本回退 创建、切换和删除分支 合并分支 克隆远端库到本地 将本地库推送到远端库 命令设置别名 Git是什么&#xf…

远程咨询的好处都有哪些呢?

随着科技的飞速发展&#xff0c;远程咨询正逐渐成为人们获取医疗服务的一种新方式。那么什么是远程咨询呢&#xff1f;其又有哪些好处呢&#xff1f;下面就给大家详细地说说。 远程咨询的概念 远程咨询&#xff0c;顾名思义&#xff0c;是指通过互联网技术&#xff0c;实现患…

使用try-catch捕获异常到底会不会影响性能?尤其是try-catch还比较多的情况下?

从字节码层面来看&#xff0c;没抛错两者的执行效率其实没啥差别。 “那为什么网上流传着try-catch会有性能问题的说法啊&#xff1f; 这个说法确实有&#xff0c;在《Effective Java》这本书里就提到了 try-catch 性能问题&#xff1a; 总结&#xff1a; 1、try-catch 相比较…

汇编:数组数据传送

要在32位汇编中实现数组数据的传送&#xff0c;可以使用字符串操作指令 MOVS 以及其前缀 REP&#xff0c;可以高效地复制数组数据。 MOVS 指令是一种字符串操作指令&#xff0c;用于将数据从源地址移动到目标地址。MOVS 指令有不同的变种&#xff0c;可以处理不同大小的数据&a…

水印怎么去除?Windows 上的最佳水印软件

我们都知道&#xff0c;任何水印软件都可以防止您的数字财产被盗。此外&#xff0c;水印是一种虚拟营销元素&#xff0c;可以帮助您推广您的作品。 奇客水印管家是 Internet 上适用于 Windows 7、8 、10 和 11 的最高效的水印软件。此外&#xff0c;它还允许用户通过添加或删除…

【C++】环境搭建及基本工作流程

C 当你需要写性能良好的代码时&#xff0c;C仍是不二选择 如果你想访问硬件、如果你想对硬件进行控制&#xff0c;C仍是首选。 所有的游戏引擎都是用C编写的&#xff0c;因为C可以直接控制硬件。 原理&#xff1a; C代码-->编译器编译comple-->目标平台的机器码-->放…

锂电池危险特性分类鉴别 危险品危险特性分类鉴别报告怎么申请

锂电池危险特性分类鉴别报告的办理流程 锂电池危险特性分类鉴别报告是用于确定锂电池及其产品对应的运输危险品分类&#xff0c;判断是否符合国际公认的危险品分类标准的报告。办理此类报告的流程通常包括以下几个步骤&#xff1a; 提供样品及测试需求&#xff1a;需要提供样品…

16.左侧导航菜单制作

左侧导航菜单制作 1. 修改路由&#xff0c;方便查看页面 index.ts import { RouteRecordRaw, createRouter, createWebHistory } from "vue-router"; import Layout from /layout/Index.vueconst routes: Array<RouteRecordRaw> [{path: /,name: home,comp…

【SpringCloud学习笔记】Elasticsearch

1. Elasticsearch 1.1 安装ES 启动Docker&#xff1a;service docker restart / systemctl restart docker基于Docker创建网络docker network create hm-net向云服务器上传elasticsearch以及kibana的tar包&#xff0c;并使用docker load -i xxx.tar进行加载使用如下命令启动e…

APD系列特高频局放监测装置

安科瑞电气股份有限公司 祁洁 15000363176 一、产品概述 现阶段&#xff0c;电力系统对于电能的质量提出越来越高的要求&#xff0c;不仅要确保供电稳定可靠&#xff0c;而且供电的安全性也是重要要求。电力系统中&#xff0c;金属封闭开关设备得到广泛应用&#xff0c;因…

程序猿大战Python——流程控制——其他控制语句

for循环 目标&#xff1a;掌握for循环的使用。 与while循环功能类似&#xff0c;for语句也能完成反复多次的执行。 for语法&#xff1a; for 临时变量 in 序列:满足条件时&#xff0c;执行的代码1满足条件时&#xff0c;执行的代码2…… [else:当for循环正常执行结束后&#…

简单了解java中的异常

异常 1、异常的概述 1.1、概述 异常就是程序出现了不正常的情况&#xff0c;程序在执行过程中&#xff0c;数据导致程序不正常&#xff0c;最终导致JVM的非正常停止。语句错误不算在异常体系中。 1.2、异常的存在形式 异常有类型之分&#xff0c;比如我们比较熟悉的数组越…

TikTok Shop账号需要防关联吗?

在TikTokShop作为新兴的电商销售渠道中&#xff0c;保护账号的安全和隐私&#xff0c;防止账号关联成为了重要的任务。为了更好地理解为何需要防关联以及如何进行防范&#xff0c;让我们深入探讨一下这个问题。 为什么要防关联&#xff1f; 1. 账号异常风险&#xff1a;防关联…

苹果AI来了,ios18史诗级发布

今天凌晨1点&#xff0c;苹果举行了WWDC开发者大会&#xff0c;正式发布了 全新iOS 18、iPadOS 18、watchOS 11、tvOS 18、macOS 等以及Apple Intelligence的个人化智能系统 苏音给大家汇总下&#xff0c;ios18的更新内容以及苹果的AI。 本次更新&#xff0c;官方带来的title…

HBuilder X运行项目到微信开发者工具调试和发布Uniapp小程序

1.下载和安装 HBuilderX hbuilder首页&#xff1a;https://www.dcloud.io/hbuilderx.html 下载hbuilder编辑器,选择对应的系统,Windows和mac正式版即可,下载后免安装直接点击即可使用。 打开HBuilder之后&#xff0c;它会要求你注册一个用户&#xff0c;然后才可以使用。 …