![](https://img-blog.csdnimg.cn/20201014180756738.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
问题随笔
文章平均质量分 72
ReadThroughLife
计算机硕士,世界50强企业Python数字化培训讲师,前世界100强企业软件开发工程师
展开
-
【已解决】Java 后端使用数组流 Array.stream() 将数组格式的 Cookie 转换成字符串格式
🎉工作中遇到这样一个场景:远程调用某个接口,该接口需要用户的。信息进行权限认证,认证通过之后才可以打通并返回数据。Debug 过程中拿到的。原创 2023-08-29 18:54:34 · 2286 阅读 · 0 评论 -
【已解决】Mybatis 实现 Group By 动态分组查询
🎉工作中遇到这样一个需求场景:实现一个统计查询,要求可以根据用户在前端界面筛选的字段进行动态地分组统计。,可能是一个字段、多个字段或者不进行分组查询,这都是由用户在前端决定的。原创 2023-08-29 17:25:40 · 7441 阅读 · 0 评论 -
【已解决】Caused by: org.springframework.beans.BeanInstantiationException: Failed to instantiate[...]
🎉当在构造方法中,需要用到@Autowired注解依赖注入的 bean 时,启动程序会出现。时,依赖的对象还没有被注入,从而导致空指针异常。这是因为 Spring 在创建对象时,会。因此,在构造方法内部访问依赖对象。因此,从上面的代码可以得知,针对第二种方法,使用。原创 2023-08-12 13:11:27 · 12734 阅读 · 0 评论 -
【已解决】Java 中使用 ES 高级客户端库 RestHighLevelClient 清理百万级规模历史数据
🎈在经过调研之后发现,某服务项目每周产生的数据量已经达到千万级别,每天将近能产生一百万的数据量写入到ES数据库中,加上之前的历史数据,目前生产环境ES数据量已经达到上亿规模。🎉工作中遇到这样一个需求场景:由于ES数据库中历史数据过多,占用太多的磁盘空间,需要定期地进行清理,在一定程度上可以释放磁盘空间,减轻磁盘空间压力。原创 2023-08-06 14:26:55 · 5333 阅读 · 4 评论 -
【已解决】Java 项目中利用 Redis 配合 Lua 脚本对短信推送消息做推送限制
在实际应用场景中,我们通常需要对短信推送消息做发送限制的处理,避免一定时间间隔内发送过多相同内容的推送短信对用户造成骚扰,也要防止攻击者恶意调用短信推送接口造成短信资源的极大浪费。尽管部分三方接口提供方的原生接口就已经做了限制,但是为了能够更好地满足定制化需求以及在编码过程中的疏忽造成接口重复调用导致资源浪费,因此我们需要在项目中做短信推送限制的处理。原创 2023-02-02 15:54:10 · 2239 阅读 · 0 评论 -
【已解决】Java 项目中接入天翼云短信推送接口
因此,接入的主要工作也是在第4个步骤,下面将重点介绍如何在代码层面调用API,实现发送短信功能。因此,对于每次接口的调用请求,都需要由。发送短信接口的请求参数、返回参数示例中的字段大小写问题,应该统一首字母小写,而官网文档给出的是大写,可以及时联系天翼云的客服人员咨询。🎉工作场景中遇到这样一个需求:在项目中接入天翼云短信发送接口,用于向用户推送短信消息,如短信验证码、系统信息推送以及推广信息等。最后,需要注意的是,经过本人前期的一些调研,发现天翼云短信服务官方文档因为历史原因,相关信息未能及时更新,如。原创 2023-01-31 15:20:06 · 3756 阅读 · 0 评论 -
【已解决】利用 Java 多线程并发编程提高数据处理效率
需求很简单,只设计一般的联动数据库查询以及数据库的更新操作,然而在编码实现过程中发现,由于主机的数量很多,导致循环遍历查询、更新时花费很长的时间,调用一次接口大概需要30-40 min 时间才能完成操作。💡因此,为了有效缩短接口方法的执行时间,便考虑使用多线程并发编程方法,利用多核处理器并行执行的能力,通过异步处理数据的方式,便可以大大缩短执行时间,提高执行效率。🎉那么在使用多线程异步更新的策略后,从当初调用接口所需的大概时间为。📍这里使用可重用固定线程数的线程池。,大大提高了执行效率。原创 2022-10-02 18:00:43 · 6410 阅读 · 4 评论 -
【已解决】MySQL 事务回滚机制失效之误用 truncate 删除表数据
🎉在工作场景中遇到这样一个需求,对表中的数据进行更新,更新的步骤是:首先,删除表中所有的数据记录;之后,再将更新过后的数据插入到表中。由于系统业务逻辑相关的原因,在数据插入时可能会出现异常,因此当出现异常而终止插入过程,需要能够将事务进行回滚,恢复之前删除的数据。首先,检查是否使用了支持事务的存储引擎,确认 MySQL 数据库使用了 InnoDB 引擎并开启了事务机制。✨这时便回忆起,为了保证事务的原子性,InnoDB 引擎在实际进行记录的增删改操作时,都需要先把 undo 日志记下来,便于之后进行回滚。原创 2022-09-25 10:18:10 · 2820 阅读 · 0 评论 -
【已解决】Java 中的可变参数应用
场景描述:在实际工作场景中遇到这样一个需求:根据筛选条件对某个模块进行查询,查询结果需要分页在前端页面显示,并将所有页的查询记录导出,生成 Excel 报表。问题描述:已经查询接口的参数需要包括:模块标识(指定对哪个模块进行查询)、查询字段(对模块的哪个字段进行查询)、查询字段值(用于精确或模糊匹配字段内容) 以及分页信息(Page);导出 Excel 报表接口的参数的主要参数除了查询接口中的分页信息以外,其他与查询接口参数一致。为了减少冗余代码的产生,这里采用 JDK 1.5 之后新增的可变函数(va原创 2022-05-27 18:31:13 · 1150 阅读 · 0 评论 -
【已解决】数据库常见场景应用计算次日留存率
记录一个数据库中常见的应用场景,需要计算用户次日留存率(次留分析),查询出计算的用户留存率。结合这个应用背景,牛客网站上的 SQL29 计算用户的平均次日留存率 非常适合拿来练习,下面就以牛客上的这道题目作为示例。题目描述:现在运营想要查看用户在某天刷题后第二天还会再来刷题的平均概率,请你取出相应数据。示例:question_practice_detailiddevice_Idquest_idresultdate12138111wrong2021-05-232原创 2022-05-20 11:26:24 · 2264 阅读 · 0 评论 -
你一定能看懂的 SpringBoot 自动装配原理
SpringBoot 自动装配原理1. 什么是 SpringBoot 自动装配2. SpringBoot 如何实现自动装配1. 什么是 SpringBoot 自动装配SpringBoot 定义了一套接口规范,这套规范规定:SpringBoot 在启动时会扫描外部引用 jar 包中的 META-INF/spring.factories 文件,将文件中配置的类型信息加载到 Spring 容器并执行类中定义的各种操作。对于外部 jar 来说,只需要按照 SpringBoot 定义的标准,就能将自己的功能装置原创 2022-05-16 13:59:19 · 1368 阅读 · 0 评论 -
【已解决】Due to limitations of the com.mongodb.BasicDocument, you can‘t add a second ‘$and‘ expression
在工作场景中遇到这样一个需求,对底层数据库中的某个字段进行筛选查询,即将不满足筛选条件的记录进行过滤掉,从而只要得到满足筛选的记录。需要说明的是,底层数据库使用的是 MongoDB,不同于传统的关系型数据库,它是一个分布式文档型数据库,在使用的语法上和关系型数据库差别较大。同样地,使用 Java 代码对 MongoDB 进行增删改查操作自然也有别于以往对关系型数据库的做法,spring 框架在包 org.springframework.data.mongodb.core 提供了一个操作类 MongoTem原创 2022-05-10 19:34:43 · 8235 阅读 · 0 评论 -
【已解决】Error querying database. Cause: java.sql.SQLDataException: ORA-01861: 文字与格式字符串不匹配
在工作场景中遇到这样一个需求,需要统计指定时间段内网站的访客数据,例如,统计从 2022 年 4 月 1 号至 2022 年 4 月 30 号内网站的所有访客记录,之后生成一个统计报表。需要注意的是,这里的时间范围是指从 2022 年 4 月 1 号凌晨 0 点 0 分 0 秒 至 2022 年 4 月 30 号 23 点 59 分 59 秒,单位必须精确到秒!对于这样的一个需求,解决思路其实很简单,无非就是对后台数据库进行时间范围的查询操作,编写 SQL 语句,肯定要用到 between and,表示指原创 2022-05-09 12:37:54 · 8155 阅读 · 0 评论 -
【已解决】java.lang.NoSuchMethodError: org.springframework.core.annotation.AnnotationUtils.clearCache() V
在做 SSM 项目时,可能会碰到这样的错误java.lang.NoSuchMethodError: org.springframework.core.annotation.AnnotationUtils.clearCache()V at org.springframework.context.support.AbstractApplicationContext.resetCommonCaches(AbstractApplicationContext.java:915) at org.springfra原创 2021-09-19 23:15:00 · 6678 阅读 · 1 评论 -
【已解决】Error: Failed to download metadata for repo ‘appstream‘: Cannot prepare internal mirrorlist
在 CentOS 8 上使用 yum 包管理工具安装 vim 时,出现以下的报错提示信息Error: Failed to download metadata for repo 'appstream': Cannot prepare internal mirrorlist: No URLs in mirrorlist解决方法首先,进入到 yum 的 repos 目录cd /etc/yum.repos.d/之后,修改 centos 文件内容sed -i 's/mirrorlist/#mirro原创 2022-04-26 10:07:55 · 130920 阅读 · 84 评论 -
【已解决】cnpm : 无法加载文件 C:UsersAppDataRoaming pmcnpm.ps1,因为在此系统上禁止运行脚本
在进行前端开发时,我们往往会在市面上的一些开源框架(基础脚手架)的基础上进行二次开发,例如可以开发一些固定的登录、注册界面以及主界面菜单样式等等内容,形成自己的脚手架,然后将脚手架打包成资源,等下次遇到类似的系统开发时候可以直接将脚手架解压下来,直接使用。这样做可以极大地节省开发时间。然后在使用淘宝镜像解压资源包时,可能会遇到下图所示的情况cnpm : 无法加载文件 C:\Users\AppData\Roaming\npm\cnpm.ps1,因为在此系统上禁止运行脚本。有关详细信息,请参阅 https原创 2021-12-11 15:55:21 · 19804 阅读 · 19 评论 -
Python 对数据集进行归一化处理并存储为 mat 格式的文件
在做科研工作时,我们不仅从理论角度分析所提 idea 的种种优势,还需要进行大量的实验,得到的实验效果可以进一步地支撑 idea 的优越性,这样更具有说服力。实验所使用的数据集作为实验的重要组成部分,我们往往需要对拿来的数据集进行数据预处理工作,因为通常使用的数据集往往都是来自各行各业的数据,而一个数据集往往具有多个属性,每个属性的值是否使用的同一量纲,这往往是个问题,如果不是采用同一个量纲进行评价,得到的值放在一起进行运算,是否公正合理?因此,归一化处理工作尤为重要,我们要将不同量纲的表达式变为无量纲,原创 2021-12-07 15:58:44 · 9857 阅读 · 0 评论 -
【已解决】MongoDB 中根据指定字段筛选出具有重复值的记录
在业务场景中遇到这样一个问题,根据某个字段进行条件查询出来的记录总数与后端 MongoDB 数据库中记录总数出现不一致的情形,经过分析之后发现是因为数据库中某个唯一字段的值重现重复的情况,导致了有多条重复的记录存在。因此,解决方法就是先筛选出指定字段有重复值的记录,再进行删除操作。因为使用的是 MongoDB 数据库,因此需要用到 MongoDB 相关的执行命令,这与 MySQL 中相关操作语句有较大差别,针对本问题的解决方法的执行命令如下:db.getCollection('host').aggreg原创 2022-04-19 13:17:03 · 6372 阅读 · 0 评论