自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(61)
  • 资源 (1)
  • 收藏
  • 关注

原创 ReentrantReadWriteLock 使用示例

ReadWriteLock 使用示例1.使用场景前两天同事发给我一个工具类,封装了调用第三方接口的方法。第三方接口调用需要带上访问凭据accessToken ,需要先调用login接口传入username password获取该token.他在方法内部,每个业务请求之前都login获取新的accessToken ,我认为这样做不优雅,因为accessToken 不是一次性的,是有有效时间...

2022-09-23 14:28:00 370

原创 非递归遍历二叉树Java

import java.util.*;public class Test { static class TreeNode { int val; TreeNode left; TreeNode right; public TreeNode(int val) { this.val = val; ...

2022-06-28 00:51:00 202

原创 新人考试(100分) 有10道2分题..

题一:新人考试(100分)题目描述有10道2分题,10道4分题,5道8分题,满分100分,答对得分,答错不得分,累计错三道则停止作答结算分数输入:最终作答者获得分数 n输出:作答可能的情况总数 mpublic class NC { // 情况计数 static int count = 0; //题目的分值数组 static int[] nums = {2, ...

2022-05-19 14:05:00 277

原创 kafka核心技术与实战 思维导图

https://www.zhixi.com/view/7d57c093

2022-02-21 14:24:00 588

原创 JMM Java内存模型

2021-12-31 16:19:00 155

原创 JVM的内存区域

HotSpot 虚拟机一、JVM的内存区域1.1 运行时数据区1.1.1 程序计数器 Program Counter Register​ 占据一块较小的内存空间,可以看做当前线程所执行的字节码的行号指示器。在虚拟机概念模型里,字节码解释器工作时就是通过改变这个计数器的值来选取下一条需要执行的字节码指令,分支,循环,跳转,异常处理,线程恢复等基础功能都需要依赖这个计数器来完成。由于jv...

2021-12-28 14:21:00 179

原创 java虚拟机

2021-12-21 16:00:00 295

原创 NC46 加起来和为目标值的组合(二)

NC46 加起来和为目标值的组合(二)刷题的时候经常可以遇到这一类型的题目。这道题总有测试用例超时,总结一下,看能不能更清晰。//这里并不是题解,而是求出数组数字所有的组合 例如 [1,2,3] -> [[1],[1,2],[1,2,3],[2],[2,3],[3]]//求 数组中任意组合的和==target 就需要先列出所有的组合。先看懂这段代码。public class...

2021-12-01 16:11:00 345 2

原创 kafka传递保证语义

kafka传递保证语义Delivery guarantee semanticAt most once :消息可能会丢失,但绝不会重复传递。At least once :消息绝不会丢失,但可能会重复传递。Exactly once :每条消息只会被传递一次。At least once + consumer 幂等。如何实现Exactly once:实现Exactly once 需要生...

2021-11-26 14:35:00 137

原创 NC27 集合的所有子集(一)

1.题目描述现在有一个没有重复元素的整数集合S,求S的所有子集注意:你给出的子集中的元素必须按升序排列给出的解集中不能出现重复的元素数据范围:1≤n≤5,集合中的任意元素满足∣val∣≤10要求:空间复杂度 O(n!),时间复杂度 O(n!)示例1输入:[1,2,3]返回值:[[],[1],[2],[3],[1,2],[1,3],[2,3],[1,2,3]]示例2输入...

2021-11-26 10:06:00 349

原创 最长递增子序列

原数组 arr [4 2 3 1 5] LinkedList<Integer> vec ;i arr vec0 4 4 //直接添加1 2 2 // 2小于4 替换掉42 3 2 3 //直接添加3 1 1 3 // 1 小于 2 替换。 即...

2021-09-16 16:17:00 68

转载 一文弄懂Spring事务管理

Spring事务失效的12种场景转载于 https://mp.weixin.qq.com/s/4M4rePjjy8-UBVvCzHchTQ前言对于从事java开发工作的同学来说,spring的事务肯定再熟悉不过了。在某些业务场景下,如果一个请求中,需要同时写入多张表的数据。为了保证操作的原子性(要么同时成功,要么同时失败),避免数据不一致的情况,我们一般都会用到spring事务。...

2021-09-10 09:44:00 159

原创 面试编程题

面试遇到了几个面试题 记录一下。1. 反射 + 代理import java.lang.reflect.InvocationHandler;import java.lang.reflect.Method;import java.lang.reflect.Proxy;/** * 1. IA 接口类中的getName()方法只是示例 * 2. 实现checkName方法,要求: * ...

2021-09-09 09:29:00 175

原创 ~ 非运算操作

java ~ 非运算操作看源码ThreadPoolExecutor 源码时,看到了这么一段~ 非运算符自己编程的时候用的比较少,于是就验证了一下这个运算符。//https://blog.csdn.net/wenxinwukui234/article/details/42119265 关于补码,我的总结是: 补码巧妙的运用了“进位丢失” 使得补码运算满足 -x + x = 0 ,...

2021-08-30 13:56:00 278

原创 Synchronized锁升级

2021-08-30 09:11:00 94

原创 大数字之和 Java实现

package Exercises;import java.util.Arrays;import java.util.Scanner;/** * 大数字之和, 字符串-字符数组实现 * 2020 07 12 */public class TheSumOfLargeNumbers { public static void main(String[] args) { ...

2021-08-27 16:16:00 126 1

原创 二分查找树(BST)源码

1.BST (Binary Search Tree)package BinarySearchTree;import java.util.ArrayList;import java.util.Iterator;import java.util.LinkedList;import java.util.Queue;import BinarySearchTree.BST.TreeNod...

2021-08-27 15:08:00 138

原创 排序算法(五) 归并排序

1.动图演示1.1自顶向下的归并排序2.代码实现2.1自顶向下的归并排序package sort;import java.util.Arrays;// 测试工具类在这里 https://www.cnblogs.com/paidaxing7090/p/15080493.htmlimport 测试工具类.SortTestHelper;public class MergeSort...

2021-08-27 14:43:00 101

原创 NC78 反转链表

public class Solution { public ListNode ReverseList(ListNode head) { ListNode pre = null; //保存前驱节点 ListNode cur = head; // cur 一开始指向头节点 ListNode nex = null; // 临时保存cur....

2021-08-27 10:35:00 181

原创 使用top命令、dump文件定位问题

使用top命令、dump文件定位问题1.背景定位java应用出问题的代码块2.一个demo一个springboot创建的demoimport org.springframework.web.bind.annotation.GetMapping;import org.springframework.web.bind.annotation.RestController;@RestCo...

2021-08-26 10:44:00 378

原创 Sum by Factors

public static String sumOfDivided(int[] s) { for (int i:s){ primeFactors(i); } String[] res = {""}; integers.forEach( x->{ int sum = 0; ...

2021-08-17 15:00:00 162

原创 排序算法(四) 希尔排序

shellSort1.动图演示2.代码实现//测试工具类在这里 https://www.cnblogs.com/paidaxing7090/p/15080493.htmlimport 测试工具类.SortTestHelper;public class ShellSort { // 我们的算法类不允许产生任何实例 private ShellSort(){} ...

2021-08-02 12:32:00 66

原创 排序算法(三) 插入排序

InsertionSort1.动图演示1. 动图1双层循环,外部循环选择需要与数组中前面元素比较的元素。内层循环,从该选定元素开始 与 该元素左边的元素进行比较。如果选定元素小于左边元素 则与之交换位置。直至找到正确的位置,此次内层循环后,左侧部分元素已经有序。2.动图2动图1的优化版本。每次比较的时候不再与前面的元素交换位置。如果选定元素 比 左边的小,则让左边元素覆盖相邻右边元素...

2021-08-02 10:15:00 95

原创 排序算法(二) 选择排序

SelectionSort1.动图演示2.代码实现测试工具类 从这里复制 https://www.cnblogs.com/paidaxing7090/p/15080493.htmlimport 测试工具类.SortTestHelper;public class SelectionSort3{ // 我们的算法类不允许产生任何实例 public stati...

2021-07-31 12:42:00 103

原创 排序算法(一) 冒泡排序

BubbleSort1.动图演示2.代码实现2.1 测试工具类import java.lang.reflect.Method;/** * 测试排序的工具类 * 后续测试其他排序时也会用到 */public class SortTestHelper { // private 修饰构造方法。不允许产生任何该类实例 private SortTestHelper(...

2021-07-30 17:00:00 113

原创 spring-boot-starter-validation 校验参数

spring-boot-starter-validation 校验参数一、前言本章介绍使用spring-boot-starter-validation 校验 SpringMVC 的入参。<parent> <groupId>org.springframework.boot</groupId> <artifactId>spring-b...

2021-07-29 11:20:00 723

原创 Spring事务传播

1.事务传播特性2.实测教员说过,实践是检验真理的唯一标准。2.1 建表mysql数据库CREATE TABLE `student` ( `id` int(10) unsigned NOT NULL AUTO_INCREMENT, `name` varchar(45) NOT NULL DEFAULT '', PRIMARY KEY (`id`)) ENGINE=Inn...

2021-07-15 17:00:00 697

原创 记一次日志框架使用不当的事故

事故以及原因排查上午运维的同事告诉我某个系统登录不进了。赶紧测试了一下,然后就连接到服务器排查具体原因。jps 一看 服务全部都挂了,根本没有在运行的。赶紧看日志 ,发现有一个服务 logback 归档了大量的错误日志。一个100M 一天300个 周末这两天 到周一早上刚好把硬盘空间撑满了。df -h 查看有一个挂载点确实满了然后 使用 du -h --max-depth = 1 查...

2021-07-12 15:46:00 74

原创 分布式事务(二): XA分布式事务协议

分布式事务解决方案分布式事务有如下解决方案:XA分布式事务协议1 二阶段提交方案:强一致性阶段 1:准备阶段准备阶段有如下三个步骤:协调者向所有参与者发送事务内容,询问是否可以提交事务,并等待所有参与者答复。各参与者执行事务操作,将 undo 和 redo 信息记入事务日志中(但不提交事务)。如参与者执行成功,给协调者反馈 yes,即可以提交;如执行失败,给协调者反馈 no,即...

2021-07-08 09:52:00 277

原创 分布式事务(一) :分布式事务的概念

1.分布式事务的概念数据库事务:分布式事务:一项业务操作可能会调用执行多个微服务。如何保证多个服务执行的多个数据库的操作整体成功或整体失败?这就是分布式事务要解决的问题。2.CAP 、BASE原则2.1 CAPCAP理论就是说在分布式存储系统中,最多只能实现上面的两点。而由于网络硬件肯定会出现延迟丢包等问题,所以分区容错性是我们必须需要实现的。所以我们只能在一致性和可用性之间进行权衡...

2021-07-08 09:44:00 130

原创 使用EsayExcel 实现 web上传excel文件(读取excel文件)

使用EsayExcel 实现 web上传excel文件(读取excel文件)1.创建项目、添加依赖<!-- 官方文档 https://www.yuque.com/easyexcel/doc/read#1bfaf593 --> <dependency> <groupId>com.alibaba</groupI...

2021-06-25 15:06:00 852

原创 将博客搬至CSDN

2021-06-04 16:15:00 41

转载 设计模式之SOLID原则

转载:https://insights.thoughtworks.cn/what-is-solid-principle/尽管大家都认为SOLID是非常重要的设计原则,并且对每一条原则都耳熟能详,但我发现大部分开发者并没有真正理解。要获得最大收益,就必须理解它们之间的关系,并综合应用所有这些原则。只有把SOLID作为一个整体,才可能构建出坚实(Solid)的软件。遗憾的是,我们看到的书籍和文章都...

2021-06-03 16:26:00 166

原创 reflect 反射

reflect 反射1. reflect 反射,理解成“透视”会更准确一点 文本配置文件 config.txt day1901.A;a day1901.B;b day1901.C;c day1901.D;d 使用‘类对象’来执行反射 反射获得一个类的定义信息 反射创建对象 反射调用成员变量、方法 2.获得类对象的三种方式 A.class C...

2021-06-03 15:01:00 86

原创 Java8 stream流 基本用例、用法

1. 处理 List 三种方式对比public static void main(String[] args) { // 1. 添加测试数据:存储多个账号的列表 List<String> accounts = new ArrayList<String>(); accounts.add("tom"); a...

2021-06-03 14:37:00 104

原创 suse openoffice安装

1.官网下载openofficehttp://www.openoffice.org/download/index.html具体选择哪个包下载,根据操作系统选择,鼠标悬停橙色字体位置会有提示。2.解压tar -xvf Apache_OpenOffice_4.1.9_Linux_x86-64_install-rpm_zh-CN.tar.gz按照图片创建目录。3.安装注意提前安装jdk...

2021-03-08 11:18:00 150

原创 axios 发送并发请求

axios.all([ axios({ url:'', params:{} }), axios({ url:'', params:{} })]).then(res => { //res 是一个数组 console.log(res); })-...

2021-01-16 23:09:00 136

原创 docker 挂载文件(不是挂载目录)

docker 启动容器时 有时候需要挂载文件,注意不是挂载目录。有时候启动容器,例如 启动 nginx 或 mysql 需要挂载一个文件,docker应该不推荐这么做的。例如 ,直接执行如下命令 ,是会报错的。docker run -p 3306:3306 --restart=always --privileged=true --name mysql -v /opt/mysql/dat...

2021-01-05 09:53:00 4872 6

原创 求最大子序列和 时间复杂度O(N)

/** * @author wang * @description * 给定有可能负的整数 A1 A2 A3 ...An * 求 Ai+...+Ak (即最大子序列和)的最大值 (0 =< i <= k <= n) * 如果所有整数为负数,则最大子序列和为 0 * * 关于这段代码的描述: * 在求最大子序列和时,假设第x个数加到thisSum中,导致t...

2021-01-03 03:33:00 208

原创 springboot应用配置文件中密码加密

数据库密码直接明文写在配置中,对安全来说,是一个很大的挑战。一旦密码泄漏,将会带来很大的安全隐患。尤其在一些企业对安全性要求很高,因此我们就考虑如何对密码进行加密。本文着重介绍Jasypt对SpringBoot配置文件加密。引入依赖:<dependency> <groupId>com.github.ulisesbocchio</group...

2020-12-31 16:22:00 251

常用的排序算法(java实现),附带一个PPT动画演示、详解了其中三种

1. 一个PPT 用动画演示了 插入排序,直接插入排序,希尔排序,附带讲解。 2. 附带其他几种常用排序的java实现的源码。 3. PPT 还是简洁、美观的,可用作模板。

2020-06-29

空空如也

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

TA关注的人

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