- 博客(166)
- 资源 (6)
- 收藏
- 关注
原创 redis集群不允许操作多个key解决方案、redis key负载均衡方案
解决redis集群报错CROSSSLOT Keys in request don't hash to the same slot问题,使用策略设计模式、工厂设计模式实现redis 大key sharding 方案
2024-05-23 19:26:42 285
原创 【踩坑日记】SpringBoot集成Kafka,消息没有按照顺序消息问题【已解决】
### 为什么kafka发送消息无法保证顺序问题? kafka使用`send`方法,不调用`get()`的话,默认是进行异步批量发送消息的(这是kafka`高吞吐量`的一个手段之一),这样是无法保证你先调用`send`方法发送的消息先发送的情况,需要进行get方法进行获取到响应(也就是`同步`的意思),达到发送的消息有序性的效果。当然:同步消耗的性能和时间肯定是没有异步更快的。### 为什么kafka消费是可以保证消费消息的有序性?**这是个不准确的问题**因为只有在同一个topic下的同一个p
2024-04-26 11:55:06 406 4
原创 SpringBoot集成auth0-jwt插件,实现jwt的token生成、校验,用户登录验证,配置拦截器拦截请求校验token功能
该文章介绍了SpringBoot如何集成auth0-jwt插件,实现jwt的token生成、校验,用户登录验证,配置拦截器拦截请求校验token功能.JWT(JSON Web Token)是一种开放标准(RFC 7519),用于在各方之间安全地传输信息。它以JSON对象的形式存在,并使用数字签名来验证信息的完整性和真实性。JWT由三部分组成,分别是Header、Payload和Signature。
2024-01-05 11:26:17 843
原创 springBoot集成RabbitMQ实现(直连模式\路由模式\广播模式\主题模式)的消息发送和接收
该项目介绍了springboot如何集成rabbitMQ消息中间件,实现(直连模式\路由模式\广播模式\主题模式)的消息发送和接收
2024-01-03 11:11:40 663
原创 SpringBoot集成 Websocket 实现服务与客户端进行消息发送和接收
Springboot+html 集成 websocket 实现前后端发送和接收消息。WebSocket是一种在单个TCP连接上进行全双工通信的协议。WebSocket使得客户端和服务器之间的数据交换变得更加简单,允许服务端主动向客户端推送数据。
2024-01-02 18:08:14 688
原创 SpringBoot 集成 Kafka消息中间件,Docker安装Kafka环境
提供kafka、zooker在docker环境下进行安装的示例,springBoot集成kafka实现producer-生产者和consumer-消费者(监听消费:single模式和batch模式)的功能实现。下面示例是采用API方式进行调用发送kafka消息,进行模拟生产者。
2023-12-28 19:00:42 802
原创 SpringBoot集成etcd,实现实时监听,实现配置中心
etcd 是一个分布式键值对存储,设计用来可靠而快速的保存关键数据并提供访问。通过分布式锁,leader选举和写屏障(writebarriers)来实现可靠的分布式协作。etcd集群是为高可用,持久性数据存储和检索而准备。以下代码实现的主要业务是:通过etcd自带监听功能,动态将监听的key进行缓存到本地缓存,达到实时监听key的变化,并且不需要多次的网络请求。
2023-12-27 15:04:37 1429 1
原创 springboot 集成log4j日志,需要自定义json格式内容输出方便ES采集
springboot 集成log4j日志,需要自定义json格式内容输出方便ES采集解决打印json内容整体输出json格式的日志报错,没有进行特殊字符转义问题解决
2023-07-06 12:16:53 2159
原创 Spring中设置Dto入参转Json时设置属性的顺序
服务端对body的参数进行加密,客户端和服务端的传参顺序不一致导致加密出来的加密字符串不一致解决, springboot对dto设置json属性的顺序
2023-03-28 19:20:32 529 1
原创 Java发送http请求报错: SSLException: Received fatal alert: internal_error
java发送http请求报错:javax.net.ssl.SSLException: Received fatal alert: internal_error
2022-12-05 16:05:57 1974
原创 oracle S3工具类 OCI S3工具类 解决S3生成预签名url前端跨域问题 S3 objectstorage api工具栏
使用对象存储和存档存储 API 来管理存储桶、对象和相关资源。有关详细信息,请参阅对象存储概述和存档存储概述。Oracle 云基础设施对象存储服务是一个互联网规模的高性能存储平台,可提供可靠且经济高效的数据持久性。对象存储服务可以存储无限量的任何内容类型的非结构化数据,包括分析数据和丰富的内容,如图像和视频。
2022-10-08 18:22:20 820
原创 Amazon S3 Compatibility 兼容API 封装AWS S3工具类 生成预前面url跨域问题解决
使用Amazon S3 兼容性 API,可以继续使用他们现有的 Amazon S3 工具(例如,SDK 客户端)并对他们的应用程序进行最小的更改以使用对象存储。Amazon S3 兼容性 API和对象存储数据集是一致的。如果使用Amazon S3 Compatibility API将数据写入对象存储,则可以使用本机对象存储API 读回数据,反之亦然。
2022-10-08 16:57:12 1850 5
原创 springboot @CrossOrigin跨域注解无效问题解决, CrossFilter 跨域过滤器配置 WebMvcConfigurer corsFilter
springboot @CrossOrigin跨域注解无效问题解决 @Bean public CorsFilter corsFilter() { UrlBasedCorsConfigurationSource urlBasedCorsConfigurationSource = new UrlBasedCorsConfigurationSource(); CorsConfiguration corsConfiguration = new CorsConfigu
2022-08-26 19:57:24 1325
原创 mybatis plus实现queryWrapper 进行动态排除查询Column列,动态进行groupBy分组
mybatis plus实现queryWrapper 进行动态排除查询Column列,动态进行groupBy分组,default Children select(Predicate predicate),.groupBy(req.getIsCountryGroup(), OverviewReportModel::getCountry);,queryWrapper.select(item -> !noSelected.contains(item.getColumn()));...
2022-07-27 15:21:22 4754
原创 Docker安装服务-MySQL,修改密码,开发远程连接权限
采用Docker容器技术,安装MySQL容器,修改MySQL密码设置远程连接权限,Failed to access directory for --secure-file-priv. Please make sure that directory exists and is accessible by MySQL Server. Supplied value : /var/lib/mysql-files 问题解决............
2022-06-27 11:38:52 588
原创 HTML JS 自定义input文件上传 file的提示文字及样式,Html+js+bootstrap+SpringBoot 实现 ajax文件上传和下载
HTML JS 自定义input文件上传 file的提示文字及样式Html+js+bootstrap+SpringBoot 实现 ajax文件上传和下载
2022-06-23 17:18:50 2763
原创 Java stream对List对象进行分组聚合操作:求和、平均值、最大值、最小值,BigDecimal求和
利用Java8新特性stream流对List对象进行安装特定属性进行分组操作,并且进行聚合操作:求和、平均值、最大值、最小值,BigDecimal的求和等
2022-06-11 11:00:41 15231
原创 Springboot 集成 Sharding-sphere 进行分库分表yaml配置--雪花算法
该文章介绍了springboot集成sharding-sphere,采用雪花算法实现分库分表的功能
2022-05-30 22:37:04 1476 3
原创 JWT: org.springframework.security.authentication.BadCredentialsException: Bad credentials报错
报错如下:org.springframework.security.authentication.BadCredentialsException: Bad credentials at org.springframework.security.authentication.dao.DaoAuthenticationProvider.additionalAuthenticationChecks(DaoAuthenticationProvider.java:79) ~[spring-security-cor
2022-05-01 01:04:01 896
原创 SpringBoot集成AWS S3 生成预签名url进行上传文件到S3
然后通过CDN映射到S3的域名进行访问,或者直接访问S3,可以查看文件。通过生成的预签名url进行上传到S3,返回200则说明文件上传成功了!使用postman进行请求后获得url。
2022-04-19 17:21:09 4471 5
原创 idea插件之:Grep Console 控制台输出最美日志颜色主题
输出样式单独INFO等单词标注颜色整体标注颜色设置Grep Console插件样式settings->other settings->Grep Console这是样式颜色参数日志级别前景色背景色Error#FF0000#370000Warn#FFC033#1A0037Info#00FFF3无Debug#808080无...
2022-04-06 19:10:46 13523
原创 Spring2.6.x版本集成knife4j启动报错:Failed to start bean ‘documentationPluginsBootstrapper‘
报错信息:Error starting ApplicationContext. To display the conditions report re-run your application with 'debug' enabled.2022-03-19 15:30:14.226 ERROR 9324 --- [ restartedMain] o.s.boot.SpringApplication : Application run failedorg.springfr
2022-03-19 15:35:04 995
原创 ubuntu 20.04 LTS子系统Docker安装Oracle-xe-11g持久化开启远程登录,Oracle创建用户
ubuntu 20.04 LTS子系统Docker安装Oracle-xe-11g1. 搜索oracle镜像docker search oracle2. 选择oracle-xe-11g的镜像下载命令:docker pull oracleinanutshell/oracle-xe-11g查看镜像列表命令:docker images,查看是否包含此镜像3. 从下载的镜像创建并启动容器,容器命名为oracle11-xedocker run不持久化命令:docker run -d -p 1521
2022-01-19 10:10:47 2554 1
原创 Mysql查询当前库是否存在此表【已解决】
查询整个MySQL服务是否存在此表 SELECT COUNT(*) as count FROM information_schema.TABLES WHERE table_name = #{tableName}查询当前库是否存在此表 SELECT COUNT(*) as count FROM information_schema.TABLES WHERE table_name = #{tableName} and TABLE_SCHEMA = (select database());切换库: u
2022-01-18 16:07:12 1263
原创 Mysql日记:设置批量插入大小、解决sql_mode=only_full_group_by问题。
查看sql_model参数# 查看sql_model参数命令SELECT @@GLOBAL.sql_mode;SELECT @@SESSION.sql_mode; sql_mode=only_full_group_by解决命令SET GLOBAL sql_mode='STRICT_TRANS_TABLES,NO_ZERO_IN_DATE,NO_ZERO_DATE,ERROR_FOR_DIVISION_BY_ZERO,NO_AUTO_CREATE_USER,NO_ENGINE_SUBSTIT
2022-01-13 11:37:59 453
原创 springBoot踩坑日记:修改了jar包内的yml文件配置参数,但是日志打印一直还是之前的配置信息【续2】
springBoot踩坑日记:修改了jar包内的yml文件配置参数,但是日志打印一直还是之前的配置信息【续2】时间来到第二天我重新在本地又打了一个jar,让同事重新部署到专网服务器上,还是使用java -jar 直接跑jar包运行。同样还是一样的报错,害,这是遇到了什么鬼呀!我的天。搞了快一个上午了,我们修改了很多次的jar包,增加了很多此的日志打印信息。同样没有问题,由于专网太卡了,我这搞着搞着要上火,所以之前部署文件的都是同事在做,这一次我好好的看了一下文件目录,怎么和jar包同级下有个appl
2022-01-11 13:35:47 1141
原创 springBoot踩坑日记:修改了jar包内的yml文件配置参数,但是日志打印一直还是之前的配置信息
springBoot踩坑日记:修改了jar包内的yml文件配置参数,但是日志打印一直还是之前的配置信息这是一个真实的故事且有故事点长!读了之后就知道作者有多蠢了!!!!在一个漆黑的夜晚,同事在部署服务环境,然后发生了一个不可思议的问题!!!这个问题发生在部署客户的专网环境上,专网环境(Win7)由于不能直接连接不了公网,所以需要将专网采集的数据定时推送到公网的FTP中,于是在yml配置文件中需要配置FTP的ip,port端口,账号密码等配置参数。同事写了一个接口,将之前没上传的文件重新上传到公网的F
2022-01-11 11:39:20 1111
原创 使用RestTemplate进行请求Post接口时中文乱码,转成Bytes字节数组也没有用【已解决】
使用RestTemplate进行请求Post接口时,中文乱码了?解放方法1. 接口 @PostMapping("/savaFile") public String savaFile(@RequestBody DcdrFile dcdrFile) { service.saveFile(dcdrFile); return "调用接口成功,可删除agent数据库数据" }2. 使用RestTemplate发送请求 RestTempl
2022-01-10 14:47:14 1636
原创 IDEA 集成MyBatisPlus后 mybatis log日志没有输出打印Sql【已解决】
IDEA 集成MyBatisPlus后 mybatis log日志没有输出打印Sql【已解决】如果是试用版,可能是到期了,需要正版或者破解版,你们懂的,想要Idea 2021版本的 mybatis log可以私聊我哟!配置日志输出即可mybatis-plus: configuration: log-impl: org.apache.ibatis.logging.stdout.StdOutImpl...
2022-01-10 10:46:51 3909
原创 EasyExcel踩坑日记:SpringBoot项目使用EasyExcel利用模板填充在Docker环境中找不到Resource文件夹下文件【已解决】
EasyExcel踩坑日记:SpringBoot项目使用EasyExcel利用模板填充在Docker环境中找不到Resource文件夹下文件SpringBoot项目在使用EasyExcel时,开发环境中,能找到文件没有任何问题;但是在测试环境中打包到docker中就报错:找不到此文件!解决方法直接获取流对象就可以了InputStream templateFile = this.getClass().getClassLoader().getResourceAsStream(templateFile
2022-01-07 16:18:36 2327
原创 Mysql批量插入数据量过大报错:Packet for query is too large (8472393 > 4194304). You can change this value on the
Mysql批量插入数据量过大报错:Packet for query is too large (8472393 > 4194304). You can change this value on themysql max_allowed_packet查询和修改max_allowed_packet 如果不设置,默认值在不同的 MySQL 版本表现不同,有的版本默认1M,有的版本默认4M。1. 查看当前配置:mysql> show variables like 'max_allowe
2022-01-05 17:26:07 1191
原创 JdbcTemplate和MyBatis判断表是否存在
JdbcTemplate /** * 判断表是否存在 * * @param tableName 表名 * @return {@link boolean} 结果(true=存在,false=不存在) * @author yunnuo */ public boolean existsTable(String tableName) { String isTableSql = String.format("SELECT CO
2021-12-30 10:37:19 2256 7
原创 EasyExcel:利用模板进行填充字段,生成公式处理,监听单元格填充后触发事件,相同日期单元格合并
EasyExcelEasyExcel是一个基于Java的简单、省内存的读写Excel的开源项目。在尽可能节约内存的情况下支持读写百M的Excel。github地址:https://github.com/alibaba/easyexcel官方文档:https://www.yuque.com/easyexcel/doc/easyexcel1. 依赖引入 <!-- easyexcel --> <dependency> <grou
2021-12-29 15:32:01 7744 4
原创 MyBatis Plus 在复杂查询条件Where中加括号,多个查询条件在括号内
MyBatis Plus 在复杂查询条件Where中加括号,多个查询条件在括号内使用add()方法官方给出示例:and(i -> i.eq("name", "李白").ne("status", "活着"))---> sql输出结果:and (name = '李白' and status <> '活着')QueryWrapper无条件时 QueryWrapper<Demo> queryWrapper = new QueryWrapper<>();
2021-12-02 14:23:38 3549 2
原创 自定义查询SQL使用Wrapper:There is no getter for property named ‘ew‘ in ‘class com.baomidou.mybatisplus.core
报错信息使用 Wrapper 自定义SQLThere is no getter for property named ‘ew’ in 'class com.baomidou.mybatisplus.core.conditions.query.QueryWrapper org.mybatis.spring.MyBatisSystemException: nested exception is org.apache.ibatis.reflection.ReflectionException: There
2021-11-17 16:28:07 4179
原创 mybatis-plus插入或更新的字段有空字符串或者null,mybatis-plus添加判空
方法1在配置文件yml中添加field-strategy属性# mybatis-plus 配置mybatis-plus: global-config: db-config: # 添加非空判断 field-strategy: not_empty从源码中可看出FieldStrategy的非空策略有public enum FieldStrategy { IGNORED, NOT_NULL, NOT_EMPTY, DEFAULT;
2021-11-16 14:28:37 2610
原创 MySQL 分组去重排序获取最新的一条记录,MySQL group by oder by 取最新一条数据, mysql | 去重查询
只排序没有分组之前数据:使用:ORDER BY aaci.component_id, aasi.create_time desc分组去重,排序之后数据在ORDER BY前添加GROUP BY aaci.component_id ,使用 component_id 进行排序SELECT aasi.wt_id as turbineId, aafi.function_id as functionId, aafi.desc as `desc`, aaci.component_id as componen
2021-09-24 13:48:02 4353 2
原创 idea连接mysql报错: No appropriate protocol (protocol is disabled or cipher suites are inappropriate(已解决)
报错如下:javax.net.ssl.SSLHandshakeException: No appropriate protocol (protocol is disabled or cipher suites are inappropriate)The following required algorithms might be disabled: SSLv3, TLSv1, TLSv1.1, RC4, DES, MD5withRSA, DH keySize < 1024, EC keySize
2021-09-13 16:16:37 50508 33
原创 IE浏览器上传文件报错:org.apache.tomcat.util.http.fileupload.FileUploadException: Stream ended unexpectedly
报错内容:13:44:28.122 [http-nio-8081-exec-13] ERROR c.d.f.w.e.GlobalExceptionHandler - [notFount,64] - 运行时异常:org.springframework.web.multipart.MultipartException: Failed to parse multipart servlet request; nested exception is java.io.IOException: org.apache.
2021-08-26 13:54:02 2844 2
文件-AES-MD5-Upload-Minio工具类.zip
2021-01-30
ajaxlib.zip
2020-11-18
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人