自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(50)
  • 收藏
  • 关注

原创 默认线程池多线程任务中获取TransmittableThreadLocal用户变量错乱问题

并发安全问题

2024-04-18 10:33:05 377

原创 mybatis-plus分页和乐观锁插件配置

【代码】mybatis-plus分页和乐观锁插件配置。

2024-03-28 10:12:58 142

原创 搜索模糊匹配% _ 等特殊字符转义工具

@description 搜索转义工具类。

2024-03-27 17:12:31 221

原创 多线程同时执行,汇总后继续执行

并发汇聚

2023-08-14 17:19:46 230

原创 初始化项目-线程池配置(object is not an instance of declaring class 异常)

项目架构—线程池配置

2022-10-25 14:47:02 437

原创 Alibaba easyexcel导出使用和工具封装

Alibaba easyexcel导出使用和工具封装

2022-09-19 16:25:17 906 1

原创 spring cloud 2020.0.* 踩坑记录

spring cloud 2020.0.* 踩坑记录

2022-09-13 15:26:53 474

原创 多线程跑数据练习

多线程

2022-06-20 16:36:29 241

原创 Spring启动流程(备用学习)

Spring启动流程

2022-04-28 14:04:55 1135

原创 Spring IOC容器初始化过程以及Bean的生命周期(学习备用)

Spring IOC容器初始化过程以及Bean的生命周期

2022-04-28 14:04:21 821

原创 JVM学习之调优问题和参数配置

JVM如何调优1.jvm调优主要目的是减少轻GC和Full GC的次数,因为轻GC和重GC都是会占用很多cpu的,影响系统的吞吐量。2、那么如何设置呢?• 尽量让对象在新生代GC的时候就回收,让对象咋新生代多存活一段时间,不要创建过大的对象及数组避免直接在老年代创建对象• 控制堆内存的新生代、老年代部分的比例和GC策略:( 1)、新生代设置过小:一是轻GC就太频繁了,增大了系统消耗,二是导致大对象直接进入旧生代,占据了旧生代剩余空间,诱发Full GC(2)、新生代设置过大:让轻GC的耗时也变长

2021-12-24 11:17:14 289

原创 Oauth2登录后访问接口权限校验多出 authority=字符串校验失败( 已解决)

一、发生的问题oauth登录模块登录成功后,带着token去访问带权限的接口,发生 Spring Security: 不允许访问 的问题查看权限断点发现是携带的权限被多加了一段字符串前提:自定义实现UserDetailsService 加载用户信息和权限 到UserDetails对象package com.lxy.blog.config;import com.lxy.blog.service.api.UserFeignClient;import domain.SecurityU

2021-11-30 14:43:20 1601

原创 Stream流快捷取出两个list的交集

List<Integer> accountIdListOne = new ArrayList<>(); accountIdListOne.add(1); accountIdListOne.add(2); accountIdListOne.add(3); accountIdListOne.add(4); List<Integer> accountIdListTwo = new ArrayL.

2021-11-30 14:41:42 2394

原创 大量for循环中new对象与clone效率对比

创建实体类,实现Cloneable接口,重写被保护的Object的clone()方法package com.benwunet.ebc.model;import lombok.Data;/** *@author liuxingying *@description *@since 2020/12/30 */@Datapublic class User implements Cloneable{ private Integer age; private String n.

2021-09-24 14:27:23 822

原创 nacos 配置mysql8.0的数据库启动报错解决方案

1.下载源码修改驱动配置2.下载mysql8.0的驱动jar包,新建plugins/mysql包,放在该目录下

2021-08-23 10:18:12 635

原创 Feign实现自定义错误处理

问题在微服务开发当中使用了Feign进行服务之间的调用,在正常情况下是可以以响应的格式返回对象数据,但是一旦发生feign客户端的异常错误,每个下游系统的异常返回方式不同,需要编写大量的错误处理代码来适应不同的服务,而且错误处理代码混在业务代码中,违反单一职责原则和最少知识原则。面临着维护难度上升的风险。需要一个方案来规避这些后期维护成本上升的风险。解决为了防止项目腐化,避免错误处理代码与业务代码强耦合。导致后期的维护成本的上升和陷入逻辑迷宫的风险。保证灵活性和高可维护性拆分错误处理代码和业务

2021-08-18 17:04:11 2562

原创 spring-cloud-stream实现RabbitMQ消息发送

一、创建一个springboot项目引入依赖pom.xml <!--stream 实现mq--> <dependency> <groupId>org.springframework.cloud</groupId> <artifactId>spring-cloud-starter-stream-rabbit</artifactId> </de

2021-08-10 10:45:18 658

原创 自定义cache-spring-boot-starter到私服

1、配置maven仓库配置文件<?xml version="1.0" encoding="UTF-8"?><settings xmlns="http://maven.apache.org/SETTINGS/1.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/SETTINGS/1.0.0 ht

2021-08-09 16:48:11 239

原创 ThreadPool线程池的创建

springboot项目配置1、application.properties 线程池基本属性值配置:threadpool.corePoolSize=10threadpool.maxPoolSize=50threadpool.queueCapacity=300threadpool.keepAliveSeconds=1000threadpool.threadNamePrefix="elk-"2、Application启动类上面加开启异步注解@EnableAsync@SpringBootAppl

2021-07-31 10:01:15 362

原创 ElasticsearchRestTemplate 用法

pom.xml配置<?xml version="1.0" encoding="UTF-8"?><project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 https://maven.apache.org/xsd/m

2021-06-03 14:07:00 13790 3

原创 elasticsearch下载加速 华为云加速地址

下载慢的小伙伴们可以到 华为云的镜像去下载速度很快,自己找对应版本就可以ElasticSearch: https://mirrors.huaweicloud.com/elasticsearch/?C=N&O=Dlogstash: https://mirrors.huaweicloud.com/logstash/?C=N&O=Dkibana: https://mirrors.huaweicloud.com/kibana/?C=N&O=D...

2021-05-29 15:26:46 264

原创 RedisUtil五种数据结构的方法工具类

package com.benwunet.cache.utils;import com.alibaba.fastjson.JSONObject;import org.springframework.data.redis.core.RedisTemplate;import org.springframework.util.CollectionUtils;import java.util.List;import java.util.Map;import java.util.Set;import

2021-04-23 16:43:39 406

原创 java自定义长度和前缀放号器的使用

简单的自定义长度和前缀放号系统,记录以后直接c1、建表建立一张放号器的表,字段规定如下,对应创建系统放号表。package com.benwunet.ebc.model;import com.baomidou.mybatisplus.annotation.IdType;import com.baomidou.mybatisplus.annotation.TableId;import io.swagger.annotations.ApiModel;import io.swagger.a.

2021-04-17 15:52:00 205

原创 sharding-jdbc分表分库

文章目录一、说明二、准备三、运行步骤1. 修改application.yml配置2. 初始化数据3. 启动工程四、测试接口1. 初始化数据2. 查询所有用户数据3. 查询某个用户数据4. 清除所有数据一、说明本demo的配置是修改自官方example,用于在本项目的依赖下集成sharding-jdbc来实现分库分表、读写分离等场景的演示sharding-jdbc详细的配置项说明:https://www.kancloud.cn/zlt2000/microservices-platform/1015741

2021-03-29 15:39:54 256 3

原创 Redis笔记

1、单机redis安装源码安装:yum -y install gccwget http://download.redis.io/releases/redis-5.0.3.tar.gztar xzf redis-5.0.3.tar.gzcd redis-5.0.3make //默认端口 63791.1修改redis的配置文件# pwd/usr/local/redis/redis-5.0.3​# vim redis.confdaemonize yes //把no 修改为yes,如

2021-03-09 15:26:12 204

原创 力扣-2-两数相加

题目:两数相加给你两个 非空 的链表,表示两个非负的整数。它们每位数字都是按照 逆序 的方式存储的,并且每个节点只能存储 一位 数字。请你将两个数相加,并以相同形式返回一个表示和的链表。你可以假设除了数字 0 之外,这两个数都不会以 0 开头。输入:l1 = [2,4,3], l2 = [5,6,4]输出:[7,0,8]解释:342 + 465 = 807.提示:每个链表中的节点数在范围 [1, 100] 内0 <= Node.val <= 9题目数据保证列表表示的数字不

2021-02-23 15:24:30 123

原创 力扣-1-两数之和

题目:给定一个整数数组 nums 和一个整数目标值 target,请你在该数组中找出 和为目标值 的那 两个 整数,并返回它们的数组下标。你可以假设每种输入只会对应一个答案。但是,数组中同一个元素不能使用两遍。你可以按任意顺序返回答案。示例:输入:nums = [2,7,11,15], target = 9输出:[0,1]解释:因为 nums[0] + nums[1] == 9 ,返回 [0, 1] 。题解思路:1、暴力运算,耗时较长2、哈希查找,一次对应 public sta

2021-02-23 15:23:53 93

转载 JVM常用内存参数配置

一、    常用参数   -Xms    JVM启动时申请的初始Heap值,默认为操作系统物理内存的1/64但小于1G。默认当空余堆内存大于70%时,JVM会减小heap的大小到-Xms指定的大小,可通过-XX:MaxHeapFreeRation=来指定这个比列。Server端JVM最好将-Xms和-Xmx设为相同值,避免每次垃圾回收完成后JVM重新分...

2021-02-23 10:46:40 387

原创 String字符串长度有限制吗?是多少?

话说Java中String是有长度限制的,听到这里很多人不禁要问,String还有长度限制?是的有,而且在JVM编译中还有规范,而且有的人在面试的时候也遇到了。首先要知道String的长度限制我们就需要知道String是怎么存储字符串的,String其实是使用的一个char类型的数组来存储字符串中的字符的。那么String既然是数组存储那数组会有长度的限制吗?是的有限制,但是是在有先提条件下的,我们看看String中返回length的方法。由此我们看到返回值类型是int类型,Java中定义数组是.

2021-02-04 16:54:48 2210

原创 xxl-job分布式任务调度系统docker搭建

1.介绍XXL-JOB是一个轻量级分布式任务调度平台,其核心设计目标是开发迅速、学习简单、轻量级、易扩展。现已开放源代码并接入多家公司线上产品线,开箱即用。2.准备在pull镜像创建容器之前先准备好mysql,后面系统需要连接mysql配置的表。先去github上面拉取代码,因为是基于docker安装,就不用源码进行启动了,那源码只为了拿取导入表的sql: xxl-job进入db目录,其中 tables_xxl_job.sql 就是我们要导入的sql文件,在Navicat里面创建一个xxl-

2021-01-21 09:58:57 1648 10

原创 微服务docker部署-jar包打包成docker镜像

1、打包微服务成单独的jar包首先将自己的项目跳过test打包成jar,并在自己本地先用java -jar xxx.jar启动下,看是否可以启动。随后将自己的jar包同级目录创建一个Dockerfile文件,并用notepad打开文件无后缀。Dockerfile:FROM openjdk:8-jre-alpineUSER root#中文乱码问题ENV LC_ALL en_US.UTF-8ENV LANG en_US.UTF-8# 时间ENV TZ=PRCRUN ln -snf /us

2021-01-15 10:10:50 7277

原创 jenkins持续化部署3-Rancher安装及部署

1.准备因为要从私服拉服务的镜像,先配置受信任vim /etc/docker/daemon.json#加下面的配置"insecure-registries":["你安装rancher的ip:5000"]重启docker:systemctl restart docker2.安装拉取rancher镜像docker pull rancher/server创建容器docker run -di --name=rancher -p 9090:8080 rancher/server3.

2021-01-12 20:58:27 7137

原创 jenkins持续化部署2-构建流水线项目

1.安装插件安装代码托管插件,我用的自己gitee,就安装gitee插件 2.新建项目选择流水线构建配置钩子触发器生成钩子webhook密码,这个密码要用在git托管仓库处用来生成钩子函数去git仓库处生成钩子函数,url地址在上图的jenkins配中有注意:弄完可以点击测试是否可以发送post测试请求,响应码200就成功,不成功则是可能用了内网的ip,识别不了,可以用ngrox穿透 内网ip端口来代替。最后生成pipeline语句pipeline{

2020-12-26 14:56:34 6932

原创 jenkins持续化部署1-linux下的安装配置

1.安装sudo wget -O /etc/yum.repos.d/jenkins.repo https://pkg.jenkins.io/redhat-stable/jenkins.reposudo rpm --import https://pkg.jenkins.io/redhat-stable/jenkins.io.keyyum install jenkins2.修改端口现在Jenkins已经安装好了,不过启动之前最好稍微修改一下配置。默认情况是Jenkins是使用Jenkins用户启

2020-12-25 17:41:59 6673

原创 Aop切面自定义注解的使用

一:功能简介本文主要记录如何使用aop切面的方式来实现日志记录功能。主要记录的信息有: 操作人,方法名,参数,运行时间,操作类型(增删改查),详细描述,返回值。二:项目结构图三:代码实现1.配置文件spring.aop.auto=true #开启spring的aop配置,简单明了,不需要多配置其他的配置或注解。server.port=1000 #端口号2.AOP切点类这个是最主要的类,可以使用自定义注解或针对包名实现AOP增强。1)这里实现了对自定义注解的环绕增强切点,对使用了自定

2020-12-16 14:42:27 8528

转载 springboot2.0 默认数据连接池HikariPool(java平台最快的,替换druid)性能对比

背景 对现有的数据库连接池做调研对比,综合性能,可靠性,稳定性,扩展性等因素选出推荐出最优的数据库连接池 。      NOTE: 本文所有测试均是MySQL库 测试结论    1:性能方面 hikariCP>druid>tomcat-jdbc>dbcp>c3p0 。hikariCP的高性能得益于最大限度...

2020-12-09 11:39:57 9940

原创 ARM64、aarch64架构docker如何解决创建容器报错exec format error

docker创建容器错误:docker在下载镜像之后,创建容器会出现秒退exit现象,容器怎么都启动不了,查看日志报错standard_init_linux.go:211: exec user process caused "exec format error"我们常用的docker安装一些常用软件及工具都是基于x86架构的服务器上的,但是最近在搭建服务器环境时用的是华为鲲鹏服务器,鲲鹏是基于ARM64架构的服务器,那么在docker上的镜像很多都没有基于这个架构打的镜像。解决方法:1、 Doc

2020-11-17 11:57:38 6558

原创 java springboot如何简单快速集成Elasticsearch文件检索

ElasticSearch是一个基于Lucene的搜索服务器。它提供了一个分布式多用户能力的全文搜索引擎,基于RESTful web接口。Elasticsearch是用Java开发的,并作为Apache许可条款下的开放源码发布,是当前流行的企业级搜索引擎。设计用于云计算中,能够达到实时搜索,稳定,可靠,快速,安装使用方便。我们建立一个网站或应用程序,并要添加搜索功能,但是想要完成搜索工作的创建是非常困难的。我们希望搜索解决方案要运行速度快,我们希望能有一个零配置和一个完全免费的搜索模式,我们希望能够简单地

2020-10-17 09:58:24 7052 2

原创 Java支付宝app wap支付接入

1.沙箱准备1.1 去支付宝开放平台找到沙箱测试,appid以及秘钥都是需要的,密钥生成工具支付宝有可以去下载 密钥生成工具.2.依赖引入 <!--支付宝支付--> <dependency> <groupId>com.alipay.sdk</groupId> <artifactId>alipay-sdk-java</artifactId> &

2020-10-10 18:16:15 9902 1

原创 Elasticsearch和可视化Kibana相关操作创建索引

前言:安装注意点-es与kibana版本要一致推荐使用docker安装,具体如何使用docker以及docker的容器安装请移步es安装以及配置.,后面我就说安装后es的DSL操作1.索引(Index)的基本操作1.1 进入可视化kibana界面后,在Dev tools界面操作DSL语句:1.2 DSL索引操作:GET /_cat/indices?v 查看索引信息PUT /dangdang/ 创建索引DELETE /dangdang 删除索引DELETE

2020-09-29 17:26:56 7942

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除