java
文章平均质量分 56
spring to do
这个作者很懒,什么都没留下…
展开
-
jar包反编译/ 修改jar包
利用IDEA插件反编译jar包 成JAVA文件idea反编译插件Decomplier出现java.lang.UnsupportedClassVersionError原创 2023-08-15 13:01:02 · 940 阅读 · 0 评论 -
java多版本切换
安装了多个java 如何切换java版本【命令行】CMD/BAT文件执行时中文乱码的解决方法JDK11更换JDK8不成功原创 2023-08-15 12:45:50 · 724 阅读 · 0 评论 -
war和war exploded
开发调试时建议选择war exploded包进行部署,正式上线时选择war包部署。原创 2023-08-08 09:54:40 · 1716 阅读 · 1 评论 -
【前端异常】Module build failed: Error: ENOENT: no such file or directory, scandir ‘G:\OPWeb\public\node_m
【代码】【前端异常】Module build failed: Error: ENOENT: no such file or directory, scandir ‘G:\OPWeb\public\node_m。原创 2023-08-04 19:40:09 · 136 阅读 · 0 评论 -
springboot或springcloud中A模块引入B模块
springboot或springcloud中A模块引入B模块原创 2023-02-27 22:43:01 · 610 阅读 · 1 评论 -
maven阿里云仓库配置方法
maven阿里云原创 2023-02-27 21:21:26 · 426 阅读 · 0 评论 -
宝塔初始化mysql
使用宝塔面板安装了mysql并初始化密码转载 2023-02-27 19:21:32 · 284 阅读 · 0 评论 -
后缀表达式
后缀表达式转载 2022-11-03 15:52:43 · 127 阅读 · 0 评论 -
缓存穿透、缓存击穿与缓存雪崩
缓存穿透、缓存击穿与缓存雪崩原创 2022-11-03 15:34:33 · 166 阅读 · 0 评论 -
时间复杂度O(1) O(n)表示什么
时间复杂度O(1) O(n)表示什么原创 2022-11-01 10:39:30 · 1008 阅读 · 0 评论 -
String为什么要设计成不可变的
总体来说, String不可变的原因包括 设计考虑,效率优化问题,以及安全性这三大方面原创 2022-10-30 21:57:46 · 240 阅读 · 0 评论 -
count(*)和count(1)和count(列名)
count(*)和count(1)和count(列名)原创 2022-10-30 20:58:35 · 195 阅读 · 0 评论 -
json 相关
1 在上添加2。原创 2022-08-17 11:17:38 · 1563 阅读 · 1 评论 -
java 新特性总结
可以有静态方法和。转载 2022-08-15 15:21:00 · 260 阅读 · 0 评论 -
Date-Time API
这是,..转载 2022-08-15 15:20:48 · 238 阅读 · 0 评论 -
什么是集群?什么是分布式?二者的区别
什么是集群?什么是分布式?二者的区别转载 2022-08-13 18:03:33 · 169 阅读 · 0 评论 -
获取用户真实 ip
因为是代理服务器去访问index.jsp的,所以index.jsp中通过request.getRemoteAddr()的方法。时,其实并不是我们浏览器真正访问到了服务器上的index.jsp文件,而是。, 除非代理将你的IP附在请求header中一起转交给web服务器。HTTP 请求到达服务器之前,经过了三个代理。(Nginx,Apache等)就会。,这适合于整个可控,信任的网络中。,写入这个header的值,然后。(申明一条访问通道)中,有一个“经过代理以后,由于在。转发请求的HTTP头。......原创 2022-08-11 17:29:53 · 2977 阅读 · 0 评论 -
commons-lang3
commons-lang3常用工具方法介绍。原创 2022-08-10 17:59:32 · 3413 阅读 · 1 评论 -
Nginx 基础入门
Nginx 基础入门参考尚硅谷Nginx教程由浅入深(一套打通丨初学者也可掌握)【狂神说】Nginx最新教程通俗易懂,40分钟搞定!转载 2022-08-07 22:14:29 · 106 阅读 · 0 评论 -
hystrix 服务熔断和服务降级
物理学电路知识涉及到熔断器(CircuitBreaker)的概念,当电路发生故障时,会迅速切断电源来保护电路的安全。在微服务架构中有些微服务由于网络问题或服务故障的原因,熔断器及时作出向服务调用方返回一个符合预期的,可处理的降级响应(FallBack),而不是让用户长时间的等待或者抛出用户无法处理的异常这样保证了服务提供方不会对系统资源长时间的,不必要的占用,避免故障在微服务系统中的蔓延,防止雪崩效应的产生。......转载 2022-08-02 14:45:08 · 2647 阅读 · 0 评论 -
SpringBoot与SpringCloud的关系与区别
是一个快速开发框架,通过用MAVEN依赖的继承方式,帮助我们,完全采用注解化(使用注解方式启动SpringMVC),简化XML配置,内置HTTP服务器(Tomcat,Jetty),最终。转载 2022-08-02 10:14:13 · 127 阅读 · 0 评论 -
互联网大厂研发流程
互联网大厂研发流程转载 2022-07-31 17:24:07 · 284 阅读 · 0 评论 -
MySQL 大表优化
当MySQL单表记录数过大时,增删改查性能都会急剧下降方案概述方案一:优化现有mysql数据库。优点:不影响现有业务,源程序不需要修改代码,成本最低。缺点:有优化瓶颈,数据量过亿就玩完了。方案二:升级数据库类型,换一种100%兼容mysql的数据库。优点:不影响现有业务,源程序不需要修改代码,你几乎不需要做任何操作就能提升数据库性能,缺点:多花钱方案三:一步到位,大数据解决方案,更换newsql/nosql数据库。优点:没有数据容量瓶颈,缺点:需要修改源程序代码,影响业务,总成本最高。方案一详细说转载 2021-11-18 20:23:39 · 619 阅读 · 0 评论 -
JAVA框架常用端口
代码】JAVA框架常用端口。原创 2022-07-22 10:00:53 · 410 阅读 · 0 评论 -
KMP 算法
代码】KMP算法。原创 2022-07-21 17:03:00 · 99 阅读 · 0 评论 -
tidb 学习
TiDB 简介分布式数据库——TiDB的介绍和基本原理原创 2022-07-16 16:03:16 · 202 阅读 · 0 评论 -
Feign 实现服务间并且调用时传递 header
A服务调用B服务,并且在进入到B服务之前,设置一个自定义的hader值可以传输B服务中的一些内容到A服务中获取。原创 2022-07-14 22:51:26 · 952 阅读 · 0 评论 -
Mysql 问题
mysql for update 死锁问题排查,但这,,,查了mysql官方文档发现,在之后,()解决一旦 有的话,是非常mysql hibernate Could not open JDBC Connection for transaction报错 和 原因原因MYSQL配置详解HikariPool 配置注意maxIdle值与maxActive值应配置的接近当连接数超过maxIdle值后,刚刚使用完的连接(刚刚空闲下来)会立即被销毁。而不是想要的空闲M秒后再销毁起一个缓冲作原创 2022-07-14 14:56:40 · 879 阅读 · 0 评论 -
HashMap 的 7 种遍历方式与性能分析
HashMap 遍历从大的方向来说,可分为以下 4 类:但每种类型下又有,因此又可以分为以下 7 种:不同的实现方式迭代器 EntrySet迭代器 KeySetForEach EntrySetForEach KeySetLambdaStreams API 单线程Streams API 多线程性能测试通过 ,编译成来看具体的原因和的遍历的 最终生成的,他们都是在创建了一个和 的 代码也是在循环中创建了一个,并且值是安全性测试迭代器方式 -删除数据安全测试转载 2022-07-13 11:57:39 · 777 阅读 · 0 评论 -
sql 函数
ROW_NUMBER() OVER()函数用法详解 (分组排序 例子多)MySQL窗口函数OVER()SQL中lag()和lead()函数使用关于SQL的LAG()和LEAD()函数原创 2022-07-12 14:46:09 · 105 阅读 · 0 评论 -
日常开发写代码原则
程序员版本的八荣八耻~很多bug都是因为 ,但是。关键这个问题多数是的,可能的。新手程序员很容易犯这个错误。所以我们 。如果你的需求是在原来接口上修改,尤其的话,一定要。举个例子吧,比如接口,,现在,就可以考虑这样处理:还要。为了保证,拒绝接口报文裸奔。因此,可以使用,还建议处理,等。很简单,就是把, ,然后,才认为是。需要 。比如:你实现转账业务,转个几百万,然后转失败了,接着客户投诉,然后你还没有打印到日志,想想那种水深火热的困境下,你却毫无办法。。。因此大家要,比如, 等等。,要以规范日志为荣,乱打原创 2022-07-11 15:03:30 · 161 阅读 · 0 评论 -
寻找第k小元素 前k小元素 select_k
快速选择算法 - Quick select和都是由发明的采用和类似的步骤。首先选定一个,然后根据将整个数组分为。那么,只考虑,而。正是因为如此,将线性时间选择算法期望为线性时间 - Randomized_Select 随机划分线性选择输入数据是互异的。算法以为模型,可以求。与快速排序不同的是,会,而只处理:每次如果,则在如果,则在 个元素使用 分三个区域的 partition快速选择算法 ( 数组中找第 K 大元素 ) - 分三个区最坏情况为线性时间 - SELECT 中位数线性原创 2022-07-05 17:01:04 · 865 阅读 · 0 评论 -
helm 基础学习
kubernetes之helm简介、安装、配置、使用指南helm 基本使用转载 2022-07-02 21:45:18 · 114 阅读 · 0 评论 -
notBlank 和 notEmpty
commons-lang 官方文档isEmptyisNotEmpty()StringUtils.isAnyEmpty()isNoneEmpty()isBank系列isBlank() 是否为真空值(空格或者空值)isNotBlank()isAnyBlank()isNoneBlank()其他方法转载 2022-07-01 11:03:28 · 2544 阅读 · 0 评论 -
sql 优化
一次SQL查询优化原理分析(900W+数据,从17s到300ms)有一张财务流水表,未分库分表,目前的数据量为9555695,分页查询使用到了limit,优化之前的查询耗时16 s 938 ms (execution: 16 s 831 ms, fetching: 107 ms),按照下文的方式调整SQL后,耗时347 ms (execution: 163 ms, fetching: 184 ms);...............原创 2022-07-01 10:37:52 · 327 阅读 · 0 评论 -
mysql for update 死锁问题排查
使用姿势加锁方式 是。当时,是如果查不到数据for update是否会加锁呢?当我们 而 不是 相等条件 检索数据 时,InnoDB 会给条件 无主键/索引,表级锁for update 的注意点 仅适用于 ,并且,在 生效 和 区别(,)查看当前运行的事务杀掉 lock_wait 的事务设置表日志查询数据库中哪些线程正在执行MySQL中 show processlist命令详解大量 block ,lock wait 或者 一条 sql running 很久相关问题其原创 2022-06-30 17:05:37 · 3528 阅读 · 0 评论 -
countdownlatch 和 completableFuture 和 CyclicBarrier
多线程工具类 CompletableFuture多线程同步工具类 countDownLatch。 相当于一个,代表一个。一般可以,或者让它。但如果呢?如果层次很深,就是回调地狱。Java 中的 其实就是 ,用来。是为了有多优美?这么说吧,一旦你使用了 CompletableFuture,就会爱不释手,就像初恋女友一样,天天想着她 用于使用的场景: 如、等 主要的方法: 是对即,支持、,它支持 默认的时候会使用 池来从它的源代码中,我们可以看到,直接提供了。其中有两组 线程池在 JDK 8 加入,原创 2022-06-29 15:16:52 · 1289 阅读 · 1 评论 -
ForkJoinPool
引入了一种新的—— 。同时引入了一种新的:是,然后,非常像 处理原理同时提供,支持,支持,支持,支持,也,主要引入了,在 和 是 “魔法”的并不是每个都会,而每个也。 的实现算法并不是那么“显然”,而是一个更加复杂的算法——这个算法的名字就叫做 主要用来使用)来解决问题。典型的应用比如快速排序算法。这里的要点在于, 需要使用比如要对,那么会将这个任务成任务和。以此类推,,到最后会来规定当数据规模到多少时,。比如,那么到最后,所有的任务加起来会有大概 2000000+ 个。问题的关键在于,。所以当原创 2022-06-29 15:09:13 · 1931 阅读 · 0 评论 -
多线程工具类 CompletableFuture
Java8 CompletableFuture 用法全解CompletableFuture 详解(一):基本概念及用法CompletableFuture使用详解JDK1.8新特性CompletableFuture总结Future和CompletableFuture的使用CompletableFuture学习记录多线程之CompletableFuture使用有了和来执行我们的异步任务 为什么还需要这个? 有两种方法:或者 JAVA8引入了这个CP 对Future做了改进状态取值类控制转载 2022-06-27 20:03:21 · 494 阅读 · 0 评论 -
优雅的自定义 ThreadPoolExecutor 线程池
java 中经常需要,非常使用或者的方式来,那样。同时,这个时候。java 中涉及到线程池的相关类均在开始的包中,涉及到的几个核心类及接口包括:的几种方式都封装在中:newFixedThreadPool设置了,,,可以,当newSingleThreadExector基本,但是,,newCachedThreadPool,同步移交队列,也就是说,,也,会,由于newScheduledThreadPool支持,注意一下,那么上面说了使用Executors工具类创建的线程池有隐患,那如何使用才能避免这个隐患转载 2022-06-24 11:27:45 · 518 阅读 · 0 评论