自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(55)
  • 资源 (10)
  • 收藏
  • 关注

原创 java 远程debug

【代码】java 远程debug。

2024-04-29 11:05:08 228 1

原创 spring-security 学习笔记一 --- 基于默认配置

1.前言本文主要讲解 spring-security 在不做任何配置情况下,它的启动流程和认证过程。1. 准备工作这里是基于springboot 2.2.5版本对应 spring-security 5.2.2版本演示的 (按我下面导入即可,版本是它自己匹配的)引入依赖<properties> <java.version>1.8</java.version> <project.build.sourceEncoding>UTF-8

2024-04-29 10:56:37 687

原创 java对象和json对象互转

在网上找了一大堆 没找到合适的import com.fasterxml.jackson.databind.DeserializationFeature;import com.fasterxml.jackson.databind.JavaType;import com.fasterxml.jackson.databind.ObjectMapper;import lombok.extern.slf4j.Slf4j;import java.io.IOException;import java.ut

2024-04-29 10:55:34 249

原创 dbeaver 导出的sql文件,恢复数据库报错,Unknown command ‘\‘‘.

这是因为编码格式错误导致的, 加上这个即可 (注意前后不能有空格)

2023-09-22 10:36:25 1213

原创 子项目中程序报:java.lang.NoClassDefFoundError

1.项目结构NoClassDefFoundError 的 java类是在父项目中导入的 ,子项目继承了父项目,在子项目中新建的main 程序中使用了该java类大家可以看下scope 是否是 provided,大家选上下图的设置就可以了,不同版本idea 可能有差距然后重新启动

2023-06-25 14:01:47 175

转载 linux reids 安装报错

dpkg: 处理软件包 redis-server (–configure)时出错:子进程 已安装 post-installation 脚本 返回错误状态 1正在处理用于 ureadahead (0.100.0-19.1) 的触发器 …正在处理用于 systemd (229-4ubuntu21.31) 的触发器 …在处理时有错误发生:redis-serverE: Sub-process /usr/bin/dpkg returned an error code (1) sudo rm /var/l

2022-03-18 18:01:13 301

原创 教学搭建一个gitlab + jenkins+k8s+docker自动化部署的项目

1. gitlab配置这里主要是在gitlab上新建一个Project,作为自己的代码仓库。把自己需要部署的项目推上去即可。这里大家可以看到 .idea 文件夹下的文件报红,通常情况下我们不想让它被git记录,我们可以向下面那样新建一个 .gitignore 文件中 配置一下即可。接下来我们在这里写自己的项目代码即可。这套自动化部署流程主要地方还是在 jenkins+k8s+docker。2. jenkins 配置1. 创建jenkins流水线项目这个的前提是你已经安装过 jenkins,首先

2021-12-29 17:18:28 3357

原创 java volatile 关键字详解

1. 简介volatile 关键字:当多个线程进行操作共享数据时,可以保证内存中的数据可见。相较于 synchronized 是java虚拟机提供的一种较为轻量级的同步策略。主要有以下特性:可见性禁止指令重排注意:3. volatile 不具备“互斥性”4. volatile 不能保证变量的“原子性”2.可见性详解2.1 JMM(java 内存模型) 简介JMM(Java内存模型Java Memory Model,简称JMM)本身是一种抽象的概念 并不真实存在,它描述的是一组规则

2021-12-23 11:31:35 491 1

原创 Comparison method violates its general contract 出现原因和解决方法

错误如下:代码如下:刚开始运行,没有什么问题,当我数据量一大的时候,就开时抛出异常,然后一点点拆解,我发现当nums1和nums2如下时,即list存在太多相同的数组就会抛出这个异常。 int[]nums1 = {-1,-1,0,0,1,1}; int[] nums2 ={-1,-1,0,0,1,1};改进后的代码当两个元素相等时,返回0即可。 但问题又来了,前面我有一些数据比较也是相等的,并没有报这个异常,然后就去百度,查资料。解释如下:在 JDK7.

2021-10-29 11:35:31 7921

原创 java中Queue和Deque详解

Queue和 Deque 共有方法boolean add(E e);在队列尾部添加一个元素 成功返回true 失败抛出异常boolean offer(E e);在队列尾部添加一个元素 成功返回true 失败返回falseE remove();取出队列的第一个元素,并从队列中移除该元素,成功返回该元素,失败返回false,如果指定元素为空,抛出NullPointerExceptionE poll();取出队列第一个元素,并从队列中移除该元素,成功返回该元素,失败返...

2021-10-28 20:12:14 1344

转载 Manacher详解

ManacherManacher算法是一个用来查找一个字符串中的最长回文子串(不是最长回文序列)的线性算法。它的优点就是把时间复杂度为O(n2)的暴力算法优化到了O(n)。首先先让我们来看看最原始的暴力扩展,分析其存在的弊端,以此来更好的理解Manacher算法。暴力匹配暴力匹配算法的原理很简单,就是从原字符串的首部开始,依次向尾部进行遍历,每访问一个字符,就以此字符为中心向两边扩展,记录该点的最长回文长度。那么我们可以想想,这样做存在什么弊端,是不是可以求出真正的最长回文子串?答案是显然不行

2021-10-18 11:08:28 2257 1

原创 queryWrapper 自定义排序(亲测有效)

queryWrapper.eq("is_delete",0);queryWrapper.orderByAsc("(case state when 0 then 0 when 1 then 2 when 2 then 1 else 3 end)");queryWrapper.orderByDesc("update_time");"(case state when 0 then 0 when 1 then 2 when 2 then 1 else 3 end)" case 后面跟你要排序的列 然后按你

2021-09-15 16:45:34 27922 5

原创 JVM尚硅谷版 jvm上篇:内存与垃圾回收篇(后八章)

JVM尚硅谷版 jvm上篇:内存与垃圾回收篇(后八章)01 jvm上篇:内存与垃圾回收篇(后八章)10.对象的实例化内存布局与访问定位1.对象的实例化2.对象的内存和布局3.对象的访问定位11.直接内存12.执行引擎1.执行引擎概述2.Java代码的编译和执行过程3.机器码,指令,汇编语言4.解释器5.JIT编译器13.StringTable1.String的基本特性2.String的内存分配3.String的基本操作4.字符串的拼接操作5.intern() 的使用6.StringTable 的垃圾回收7.

2021-09-13 17:00:03 236

原创 JVM尚硅谷版 jvm上篇:内存与垃圾回收篇(前九章)

JVM尚硅谷版01 jvm上篇:内存与垃圾回收篇1.jvm与Java体系结构1.java层级2.jvm的位置3.跨平台4.跨语言的平台5.字节码6.虚拟机与Java虚拟机7.jvm整体结构8.java代码执行流程9.jvm架构模型10.jvm生命周期11.jvm发展历程2.类加载子系统1.内存结构概述2.类加载器与类的加载过程3.类加载器分类4.classLoader使用说明5.双亲委派机制6.其他3.运行时数据区概述与线程1.运行是数据区内部结构2.线程4.程序寄存器(PC寄存器)1.pc介绍2.举例说明

2021-09-07 16:51:31 318

原创 mysql中模糊查询 输入 %和_会出现全部数据的几种解决办法

使用 / escape ‘/’//要查%或者_,需要使用escape,转义字符后面最近的%或_就不作为通配符了//sqlselect username from gg_user where username like '%/%%' escape '/';//mybatis中( name LIKE CONCAT('%','/',#{key},'%') escape '/'使用字符串替换// javaprivate String queryReplace(String query) .

2021-07-19 15:41:07 2283 1

转载 数据库MySQL学习笔记高级篇(周阳)

数据库MySQL学习笔记高级篇1. mysql的架构介绍mysql简介高级MysqlmysqlLinux版的安装mysql配置文件mysql逻辑架构介绍mysql存储引擎2. 索引优化分析性能下降SQL慢常见通用的Join查询索引简介性能分析索引优化3. 查询截取分析查询优化1. mysql的架构介绍mysql简介高级Mysql完整的mysql优化需要很深的功底,大公司甚至有专门的DBA写上述mysql内核sql优化工程师mysql服务器的优化各种参数常量设定查询语句优化主从复制软

2021-06-22 20:28:05 1700

原创 消息中间件RabbitMQ学习笔记

消息中间件RabbitMQ1.简介2.使用1.依赖2.客户端3.配置信息4. 代码实现1.发送消息,创建 Exchange,Queue,Binding测试2.rabbit 配置3队列 交换机等创建消费端代码举例1.简介RabbitMQ是实现了高级消息队列协议(AMQP)的开源消息代理软件(亦称面向消息的中间件)。RabbitMQ服务器是用Erlang语言编写的,基于AMQP协议实现,支持多种场景,高性能,高可用,支持海量数据。rabbitmq 的一些概念,需要了解的话 点这里2.使用1.依赖

2021-06-21 20:19:21 108

转载 RabbitMQ概念详解

RabbitMQ概念详解一.AMQP协议1. AMQP协议简介2. 功能范围3. 技术术语二.RabbitMQ1. RabbitMQ基础概念2. Exchange消息调度策略1. Fanout (订阅模式|广播模式)2. Direct(路由模式)3.Topic (通配符模式)4. Headers(键值对模式)3.RPC4. 消息确认:Message acknowledgment5.消息持久化:Message durability6.分发机制①.轮询分发:Round-robin dispatching②.公平

2021-06-21 19:58:05 2022

原创 java压缩包遍历解压 zip和 7z中指定格式的文件

import lombok.extern.slf4j.Slf4j;import org.apache.commons.compress.archivers.sevenz.SevenZArchiveEntry;import org.apache.commons.compress.archivers.sevenz.SevenZFile;import java.io.*;import java.nio.charset.Charset;import java.nio.file.Files;import

2021-06-15 15:02:50 429

原创 shell脚本调用接口获取返回值 遍历下载文件

#!/bin/bash#获取当前服务器的名称HN=`hostname`#截取当前模型名称name= echo ${HN%-*}#name=ceshi_lcx#echo $name#当前模型下可用数据下载地址url="http://ip:30388/aFile?name=$name"#returnData=$(curl -X GET $url -H "accept:*/*" | jq '.[] | {path:.path}')#请求接口返回完整数据returnData=$(curl -X

2021-06-12 17:30:46 2018

原创 Feign远程调用请求头丢失问题

提示:文章写完后,目录可以自动生成,如何生成可参考右边的帮助文档文章目录一、为什么会丢失请求头二、解决方法1.单线程2.异步远程调用时,请求头丢失总结一、为什么会丢失请求头问题描述:在微服务项目中,我们做了单点登录,在项目使用feign 调用另一个模块的远程服务时,发现提示无权限调用。//1.在远程调用的方法上打个断点List<MemberAddressVo> address = memberFeignService.getAddress(memberRespVo.getId())

2021-05-27 16:01:49 1415

转载 Java中的ThreadLocal详解

目录一、ThreadLocal简介二、ThreadLocal简单使用三、ThreadLocal的实现原理四、ThreadLocal不支持继承性五、InheritableThreadLocal类六、从ThreadLocalMap看ThreadLocal使用不当的内存泄漏问题一、ThreadLocal简介  多线程访问同一个共享变量的时候容易出现并发问题,特别是多个线程对一个变量进行写入的时候,为了保证线程安全,一般使用者在访问共享变量的时候需要进行额外的同步措施才能保证线程安全性。T

2021-05-26 15:36:23 152

原创 docker: invalid reference format.

报docker: invalid reference format.错误 原因无非几种docker run --name elasticsearch -p 9200:9200 -p 9300:9300 \-e "discovery.type=single-node" \-e ES_JAVA_OPTS="-Xms64m -Xmx512m" \-v /mydata/elasticsearch/config/elasticsearch.yml:/usr/share/elasticsearch/conf.

2021-04-28 10:59:35 29467 2

原创 springcloud nacos入门详解

一:Nacos 介绍nacos整合springcloud 主要是用来做动态配置服务和服务发现管理的,更详细的介绍我就不说了 感兴趣的可以去看官网 中文介绍很友好https://nacos.io/zh-cn/二:Nacos 动态配置1.使用nacos作为配置中心统一管理配置引入依赖(这里我使用的是springcloud G 版本 注意和你的版本对应) <dependency> <groupId>org.springframework.cloud&

2021-04-08 20:29:46 1021

原创 关于junit测试与spring security时

问题描述使用单元测试时,需要调用项目的其他接口,而其中有的接口涉及到了权限管理,因为不是从前端带token发过来的 所以会出现一些问题(比如 直接从容器中获取当前用户会报空解决方法:1.1.在测试类上加 前两个注解@RunWith(SpringRunner.class)@SpringBootTest@AutoConfigureMockMvc //非必须 其他测试需要public class DataCollectionTest { @Autowired DataColle.

2021-04-07 14:27:53 1260

原创 com.amazonaws.services.s3.model.AmazonS3Exception记录

1.关于com.amazonaws.services.s3.model.AmazonS3Exception: null (Service:Amazon S3; Status Code: 400; Error Code: InvalidPart; Request ID:tx0000000000000042cc701-0060594d57-139ef2-gpu-store) 异常处理我的是因为PartEtag 类保存出错(当时用同一个文件测得切片1,2,3 以为里面的eTag都相同)2.关于 .

2021-03-23 17:22:08 11871

原创 断点续传,切片上传java源码(AmazonS3 版)

1.controller层@Api(tags = "文件分块上传与下载")@RestController@RequestMapping("/upload")@Slf4jpublic class UploadPartController { @Autowired private UploadPartService uploadPartService; @ApiOperation(value = "开启分片上传") @PostMapping("/initiateMu

2021-03-23 15:01:15 1665 8

原创 大文件切片上传,断点续传含java源码(保存到本地)

切片上传,和断点续传的概念 大家自己百度 话不多说直接上代码1.初始话断点续传 @Autowired private RedisTemplate<String,Object> redisTemplate; private Lock lock = new ReentrantLock();@ApiOperation(value = "开启分片上传") @GetMapping("/initiateMultipartUpload/{filename}")

2021-03-23 14:33:13 412 4

原创 nio学习小记1

一、缓冲区(Buffer):在java NIO 中负责数据的存储。缓冲区就是数组,用于存储不同数据类型的数据根据数据类型不同(boolean)除外,提供了相对应的缓冲区ByteBufferLongBufferShortBufferIntBufferFloatBufferDoubleBufferCharBuffer上述缓冲区管理方式几乎一致 通过allocate() 获取缓冲区二,缓存区存储数据的两个核心方法put():存入缓冲区get(): 获取缓冲区中的数据三, 缓.

2021-03-15 12:05:54 75

原创 阿里云视频点播服务入门(附完整源码)

1.项目结构2.pom文件,(aliyun-sdk-vod-upload下载失败 可去jar下载地址下载 后把jar包 放到maven仓库对应地址即可<dependencies> <dependency> <groupId>com.aliyun</groupId> <artifactId>aliyun-java-sdk-core</artifactId>

2021-03-10 17:39:43 1894

原创 aliyun-sdk-vod-upload jar包引入失败

只需要下载这里面的aliyun-sdk-vod-upload jar包 放在你的maven仓库对应的文件夹里面就行了jar下载地址

2021-03-10 17:21:21 378

原创 阿里云oos对象存储 上手快速入门

一·要想使用阿里云oos对象存储 首先要去阿里云官网开通这个服务点进去开通该服务 根据自己需求填写即可二·首次开通服务后 它会给你一个AccessKey ID和AccessKey Secret记得保管好如果丢了的话在这里可以找回三·新建一个bucket四·话不多说上教程和代码官方教程阿里java官方教程自己手撸代码 //上传图片到oss中 @Override public String uploadFileAvatar(MultipartFile multip

2021-03-10 16:49:47 1372

原创 springboot项目中mapper.xml文件找不到(三种解决方式)

通常mapper文件找不到会报这种异常:org.apache.ibatis.binding.BindingException: Invalid bound statement (not found)主要是因为使用maven在编译项目时,会默认不打包java文件夹下的xml文件 所以我们在执行时 会报上面的异常最近自己遇到了这种问题 查资料啥的找到了以下三种解决方式:1.如果你的mapper映射文件也是放在 Java文件下 你可以直接在项目编译后 把mapper文件复制到编译后的target文

2021-03-10 15:55:48 16527 1

原创 Canal数据库同步安装,配置,测试过程加源码(附源码)

一:准备工作1.首先配置MySQL(1)检查binlog功能是否有开启mysql> show variables like 'log_bin';(2)如果显示状态为OFF表示该功能未开启,开启binlog功能,windows系统找到my.inilinux系统找到自己的mysql配置文件 在后面加入1,修改 mysql 的配置文件#追加canal配置log-bin=mysql-bin #binlog文件名binlog_format=ROW #选择row模式serve

2021-03-10 15:11:25 674 4

转载 windows下redis启动 安装

一、下载windows版本的Redis去官网找了很久,发现原来在官网上可以下载的windows版本的,现在官网以及没有下载地址,只能在github上下载,官网只提供linux版本的下载官网下载地址:http://redis.io/downloadgithub下载地址:https://github.com/MSOpenTech/redis/tags二、安装Redis1.这里下载的是Redis-x64-3.2.100版本,我的电脑是win10 64位,所以下载64位版本的,在运行中输入cmd,然后把目

2021-02-24 17:07:14 104

原创 Internal error in the corejs2 provider: unknown polyfill “es6.array.slice“.的解决方法

这是我的完整报错信息看网上的方法 目前总结了四种core.js版本过高导致的,需要重新安装core.js,运行下方命令即可:cnpm install core-js@2试过没有解决我的问题2.直接运行 cnpm install core-js@3.8.1 然后重新执行 我的问题解决了第三种方案我没试过贴下大佬的链接 https://blog.csdn.net/promiseCao/article/details/89713791?utm_medium=distribute.

2021-02-23 20:23:27 1315

原创 使用mybatisplus 进行like 查询查不出来值 在数据库却能查出来值得解决方法

使用mybatisplus 进行like 查询查不出来值 在数据库却能查出来值得解决方法JsqlParserCountOptimize sql=SELECT id,name,intro,career,level,avatar,sort,is_deleted,gmt_create,gmt_modified FROM edu_teacherWHERE name LIKE ? AND level = ? ORDER BY gmt_create DESC> Preparing: SELECT

2021-01-29 16:43:08 1771 2

原创 mysql 使用!=null时判断 结果全为空 以及null和““的区别

SELECT * FROM file where size != null执行后结果为空我们只要把 != null 换成 is not null 或 != “” 就行了看到这里很多人都在想 为啥 != “” 它可以 而!= null 不可以因为 null和""本质是不同的1.我们可以看到“”的长度是0 而 null的长度为null 这里 null其实也是占用内存空间的 具体占用大家可以百度2.我们在插入数据时用“”可以 而用null却不行– 全部插入 NULL,失败 m.

2021-01-25 15:30:58 1981 1

原创 npm ERR! node-sass@4.14.1 postinstall: `node scripts/build.js`

网上看的方法都是npm config set sass_binary_site=https://npm.taobao.org/mirrors/node-sass可是我的是内网 用不了后面想到一个方法 直接把下载好的对应版本的node-sass 直接 放到项目的node_modules即可这里我给大家准备了4.14.1和5.0.0两个版本https://download.csdn.net/download/licux/14889139...

2021-01-20 15:48:56 700

原创 Integer.toHexString(int i)的理解

Integer.toHexString(int i),这个方法是Integer类提供的一个将传入的int类型转成(无符号)16进制字符串的方法(我测了 二进制十进制都可以,本文主要记录十进制)1.首先它调用了toUnsignedString0(i, 4)这个方法 public static String toHexString(int i) { //因为一个十六进制,占用四个字节 所以这里传4 return toUnsignedString0(i, 4); }2.我们通过

2021-01-15 16:16:25 8607 1

JVM下篇:性能监控与调优篇

JVM下篇:性能监控与调优篇

2021-10-13

第四章. 再谈类的加载器.mmap

第四章. 再谈类的加载器.mmap

2021-09-29

第三章:类的加载过程(类的生命周期)详解.mmap

第三章:类的加载过程(类的生命周期)详解.mmap

2021-09-29

第2章:字节码指令集与解析举例.mmap

第2章:字节码指令集与解析举例.mmap

2021-09-29

第一章:class文件结构.mmap

第一章:class文件结构.mmap

2021-09-29

自己手写nio和netty,不建议下载

自己手写nio和netty,不建议下载

2021-04-01

guli_parent.zip

谷粒学院 后端完整代码

2021-03-10

vodUpload_java.zip

aliyun-java-vod-upload-1.4.11.jar和aliyun-java-vod-upload-1.4.13.jar都放到里面了 需要自取

2021-03-10

canal.deployer-1.1.5-SNAPSHOT.tar

MySQL数据库同步

2021-03-10

node-sass4.14.1和5.0.0版本.zip

node-sass4.14.1和5.0.0版本.zip

2021-01-20

空空如也

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

TA关注的人

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