自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(103)
  • 资源 (8)
  • 收藏
  • 关注

原创 HashMap源码分析

这个方法都干了啥,resize()望文生义就是扩容的意思(此处先写初始化的逻辑,扩容逻辑后续还得分析)binCount 是从0开始的,等于7的时候触发,说明p.next了7下这就说明转化时机是当第八个的时候就要转成树了。进入到这个putTreeVal方法中看了下,就是简单的在树上加了一个node,由于是新加元素此处不涉及树和链表的转化,继续看下面的,再贴一下。我们先看下删除的逻辑,扩容的逻辑最后讲,比较经典。一个未写初始容量的源码,从底层看就写了一个扩容因子,那么容量是在啥时候初始化的呢?

2024-04-12 17:40:43 344

原创 ReentrantLock、synchronized、volatile

非公平锁有这么一段,上来就拿锁,那不到再去排队去,不公平就体现在这里。说明了这个是支持公平锁和非公平锁的,默认非公平锁,继续往下看。1、ReentrantLock是基于API层面的锁。2、synchronized关键字的底层原理。解锁看源码,也就是唤醒阻塞队列中的下一个。说到并发就就少不了这几个关键字。

2024-04-10 23:41:01 230 1

原创 线程池阻塞队列的选择

想起前两年被问到阻塞队列怎么选,有界是必然的, ArrayBlockingQueue、LinkedBlockingQueue怎么选呢。在出队列中必然有一个 LockSupport.unpark(node.thread);会将当前线程放到Condition等待队列中。1、阻塞队列是怎么阻塞住呢?比如队列满了还往里面放是咋处理的?得出结论,第二个吞吐量高,因为进队列和出队列相互没影响。点击方法发现第一个用一个锁,第二两个锁。2、遇到一个关键字volatile。其实用的还是下列的方法。

2024-04-10 22:46:25 185

原创 禅道不同系统迁移详解及Linux安装(windows->linux)

禅道安装迁移

2023-12-05 14:21:54 685

原创 iText生成pdf时表格中最后一行单元格不够,导致表格最后一行缺失一部分数据

在 iText 库中,PdfPTable 是用于创建 PDF 表格的类。默认情况下,如果您使用 PdfPTable 创建一个表格,而最后一行的单元格不够,iText 不会自动为您创建一个新的行,而是将单元格排列在当前行中,直到没有足够的单元格为止。这可能导致表格最后一行缺失一部分数据。举例:下面如果添加3个,只有一行,添加4个,就会两行了。

2023-11-07 16:34:01 311

原创 win11家庭版 使用vm进行虚拟化的设置(此平台不支持虚拟化的 Intel VT-x/EPT。)

并且发现没,很多人说的Hyper-V在这里并没有,还有说自己执行一个脚本策略组就有了(很麻烦还不管用),然而即使有策略组,你在策略组中依然找不到。2、直接在服务中禁用Hyper-V打头的,然后cmd执行bcdedit /set hypervisorlaunchtype off。二、此时安装vm,创建虚拟机就没问题了,但是想继续再虚拟化,将会有一个问题“此平台不支持虚拟化的 Intel VT-x/EPT。执行了微软的脚本才可以了。此时需要干的两件事:关闭掉虚拟化的相关东西。3、关闭内核隔离(比较复杂的来了)

2023-04-11 14:15:11 6501 1

原创 mysql的三大日志

这就涉及到我们前边文章中介绍过的ChangeBuffer技术了,在满足ChangeBuffer缓存操作的条件下,InnoDB并不会立即把数据的变更操作写入磁盘,而是将这些对数据页的操作缓存到ChangeBuffer中,数据库找合适的机会再将操作Merge到数据库中。如果数据库数据更新的频率非常低,那么这样更新方式数据库也可以接受,但是在更新非常频繁的情况下,大量的离散IO会成为数据库的瓶颈,影响数据库的性能。binlog刷盘时机。:对SQL语句的词法和语法进行分析,判断SQL语句的类型和对应的表等信息;

2023-02-27 22:26:43 272

原创 mysql分组排序以及排序失效问题

分组排序失效

2023-02-10 16:06:38 846

原创 vue动态增加表格

https://blog.csdn.net/hellotutu/article/details/124876424

2023-01-24 14:35:31 341

原创 springboot动态生成图

starwars。

2022-12-24 23:39:56 90

原创 mysql堆表索引组织表存储引擎以及分区分表

分区分表

2022-11-30 13:56:02 156

原创 Java回调函数是什么?实现的方式有哪些

Java回调函数

2022-11-21 15:03:01 367

原创 浅谈ThreadLocal

浅谈ThreadLocal

2022-11-02 15:55:25 77

原创 自定义注解验证对象多级复杂属性以及不同属性之间校验(属性不能为空)

注解验证属性不能为空,以及当一个属性是什么样的时候,另一个属性不能为空

2022-09-16 11:24:37 914

原创 两个字符串每个字符交叉打印

两个串交叉打印

2022-09-02 14:37:35 146

原创 java面向对象思路解决哲学家就餐问题

哲学家就餐问题

2022-09-02 11:29:43 455

原创 jsp中加了一个html页面乱码

jsp中加载html页面乱码处理

2022-08-04 11:24:17 259

原创 小程序获取二维码wxacode.getUnlimited 的解析(判断类型,分别接收)

对二维码接口返回类型判断并接收

2022-07-14 11:42:41 1297

原创 使用json传递byte[]给前台

二进制传输前端的方式

2022-06-28 17:46:59 1880

原创 MyBatis 写入数据时带出id(包含oracle和Mysql自增)

oracle自增主键实现,以及mybatis获取自增主键

2022-06-10 15:12:31 539

原创 Linux下创建oracle数据库

oracle create database xxxxxDB 无法创建

2022-06-01 16:41:40 2291

原创 maven的常用网站

maven常用网站:http://mvnrepository.com/http://search.maven.org/http://repository.sonatype.org/content/groups/public/http://people.apache.org/repo/m2-snapshot-repository/http://people.apache.org/repo/m2-incubating-repository/

2022-05-18 17:03:44 993

原创 JAVA服务域名二级证书步骤

1.申请二级域名,会有两个文件(后缀.key .pem)7310525__linkxxx.com.key7310525__linkxxx.com.pem2、在服务器执行openssl pkcs12 -export -out calloutapptest.linkxxx.com.pfx -inkey 7310525__linkxxx.com.key -in 7310525__linkxxx.com.pem-- 输入两次密码需要记住Enter Export Password:Verifyin

2022-04-19 11:37:22 470

原创 mysql之mvcc理解

一、说到mvcc就少不了事务隔离级别(大白话解释)序列化(SERIALIZABLE):事务之间完全隔离,当成一个序列,一个一个执行。可重复读(REPEATABLE READ):不会被看成一个序列,但是这个事务里发生的改变,另一个事务中是看不到的,即同时执行两个select结果是一样的。(默认)提交读(READ COMMITTED):这个事务里发生改变并且提交,在另一个事务里是可见的,两条select中间提交过数据,两次结果可能不同。未提交读(READ UNCOMMITTED):可以读到未提交的

2022-04-06 17:00:13 1243

原创 RocketMq拉取模式消费者模块

一、背景推送模式如果消费者处理慢,大量消息会导致消费者宕机,因此采用消费者实时拉取。要么自己写while(true),要么用如下二、代码如下@Componentpublic class MyConsumer { private final Logger logger = LoggerFactory.getLogger(this.getClass()); @Autowired private RocketMQConfig rocketMQConfig; @Po

2021-12-31 14:01:53 1416

原创 学习spring源码需要的一些设计模式

一、单例设计模式直接所懒加载吧1、必须private 一下构造方法,要不别人直接new了2、为何两个if?外面的if是为了避免后面每次获取都会竞争锁,里面的if是为了两个线程都通过了第一个if,后面拿到锁的线程并不知道第一个线程已经创建了。3、volatile 这个是为了避免指令重排,lazySingleton = new LazySingleton()并不是一个原子操作,而当多线程获取的时候,类还没创建完成。public class LazySingleton { private vo

2021-11-04 20:55:05 223

原创 shell脚本积累

1、对比移动#!/bin/bashfrom_dir="/a/"to_dir="/b/"compare_dir="/c/"curPath=$(readlink -f "$(dirname "$0")")cd ${compare_dir}for file_a in ${from_dir}*do temp_file=`basename $file_a` #寻找下个文件是否存在 if [ -f $temp_file ];then #如果存在 不处理 echo $(d

2021-11-04 14:35:49 85

原创 linux命令积累

Linux 查找某一文件夹下所有指定文件类型的文件进行复制操作find /data/hdfile/CHANNEL/HD/YY/backup -name "*.dat" -exec cp {} /data/hdfile/CHANNEL/BFBe3e9/HD/YY/downfiles \;查找字符串grep -rn 'SendRequestToApiBolt sendRequestToApi resultJson' vop_gw_topology-568-1632736694-6700-worker

2021-10-26 14:19:22 142

原创 mybatis多数据源的驼峰命名法

一、背景配置多数据源,驼峰失效mybatis: configuration: map-underscore-to-camel-case: true但数据源没问题,多数据源不知道那个数据源用,所以配置bean的时候配置一下二、解决方案设置如下代码即可org.apache.ibatis.session.Configuration configuration = new org.apache.ibatis.session.Configuration(); configur

2021-10-14 17:59:49 424

原创 工作中优雅的创建多线程(附带源码分析)

一、创建的几种方式(看看就好,项目中都用线程池,没人单独创建,这里复习一下)1、继承Threadpublic class ThreadDemo extends Thread{ @Override public void run() { System.out.println("我继承了Thread"); } public static void main(String[] args) { ThreadDemo eh = new Threa

2021-09-08 01:48:42 525 1

原创 Linux下RocketMQ详细步骤

一、安装RocketMQ需要安装maven1、安装maven下载wget https://mirrors.cnnic.cn/apache/maven/maven-3/3.5.4/binaries/apache-maven-3.5.4-bin.tar.gz --no-check-certificate解压tar -xf apache-maven-3.5.4-bin.tar.gz 2、配置环境变量全局环境变量或者用户环境变量即 /etc/profile或.bash_profile文件在其中

2021-09-07 16:03:13 282

原创 linux 创建用户

会自动再home创建下创建工作目录adduser usernamepasswd username

2021-09-06 14:06:13 67

转载 js获取本周本月第一天和最后一天

转载于https://www.cnblogs.com/sxxjyj/p/6093326.htmlvar now = new Date(); // 当前日期var nowDayOfWeek = now.getDay(); // 今天本周的第几天var nowDay = now.getDate(); // 当前日var nowMonth = now.getMonth(); // 当前月var nowYear = now.getYear(); // 当前年nowYear += (nowYear &lt

2021-07-19 16:45:56 513

原创 mysql 另一个列插入和主键相同的数据

查询出的主键select AUTO_INCREMENT from information_schema.tables where table_name='msg_archive'举例:<insert id="save" parameterType="com.xxx.crm.message.entity.ArchiveDO"> insert into msg_archive ( `archive_id`, `archive_name`, `archive_e

2021-06-24 10:24:48 1138

原创 list里面的对象属性去重和覆盖

jdk1.8一、去重(set去重)List<Message> list= new ArrayList<>();...List<Message> unique = list.stream().collect(Collectors.collectingAndThen( Collectors.toCollection(() -> new TreeSet<>( Comparator.comparing(Message::getPhon

2021-05-13 11:18:19 510

原创 tomcat服务访问本地资源

一、背景项目经常会上传文件,并且预览,如头像之类的,如果放置于项目中,更新项目会有问题。二、方案写入本地,不做介绍。主要在于读取:在tomcat的server.xml 文件中 Host标签中添加如下1)windows中<Context path="/appletcode" docBase="E:\home\crmmeeting\appletcode" debug="0" reloadable="true"></Context>2)linux中<Contex

2021-04-13 16:43:20 565

原创 mybatis返回一个内部类

一、背景需要返回一个内部类出错二、解决注意两个点即可1、返回类型的写法resultType="com.netxxx.crm.outbound.util.FormatMessageUtil$Message"普通类和内部类之间不要用“.”,用“$”,虽然编译器对这两个都能跳转。2、内部类必须是静态的非静态的内部类的创建需要依赖外部类...

2021-04-09 10:54:11 750

原创 导出excel 报错The maximum column width for an individual cell is 255 characters

一、背景导出excel,某列数据太长二、解决/** * 自动调整列宽 * * @param sheet * @param columnNumber */ private static void autoSizeColumns(Sheet sheet, int columnNumber) { for (int i = 0; i < columnNumber; i++) { int orgWidth =

2021-03-17 10:43:32 4489 1

原创 SVN创建第一个项目

一、登录服务器(首先的有权限)打开svn窗口,切换到想要创建的目录下,选中右键,创建目录(Create folder)二、上传文件右键本地项目,TortoiseSVN-import,选中创建的文件夹,确定即可三、SVN checkout此时文件夹上就有小对号...

2021-03-15 17:12:27 201

原创 堆内存溢出 :Unknown exception:java.lang.OutOfMemoryError: PermGen space

一、背景更换新服务器出现如下错误提示Unknown exception:java.lang.OutOfMemoryError: PermGen space二、解决方案在tomcat/bin/catalina.sh加上JAVA_OPTS="-XX:PermSize=128M -XX:MaxPermSize=256m -Xms1024m -Xmx2048m"即可解决-XX:PermSize:表示非堆区初始内存分配大小,其缩写为permanent size(持久化内存)-XX:MaxPermS

2021-03-12 10:01:19 269

rsa加密前后端交互.前端加密后端解密

https://blog.csdn.net/qq_37752382/article/details/102937028 文章中有讲解

2022-08-01

jclasslib.jar

一般下载的jclasslib修改class文件工具lib下面没有这个jar,只有jclasslib-library.jar和jclasslib-browser.jar,此jar亲测好用,

2020-08-04

可编辑bootstrap插件_demo.rar

可编辑表格bootstrap完整demo,无弹窗,可实现自由编辑和日期控件,select控件,预览图片可看博主帖子

2020-07-06

快逸报表 V4.2.20 免费版.rar

快逸报表4.2版本,破解版,配置文件失效可看本人授权帖子下载

2019-07-30

设计器授权文件.zip

快逸报表设计器的授权文件,官网已经没有了,此文件是设计器的,服务器的请看本人别的上传文件

2019-07-30

classes授权文件.zip

快逸报表授权文件,亲测好用。现在官网没有这个文件了,找了很多地方,很多都失效了,无语。4.0 4.2版本

2019-07-30

apache-maven-3.2.1-bin免安装版.zip

apache-maven-3.2.1-bin免安装版,内附安装文档以及环境变量

2019-07-29

jdk1.7.0_51.zip

1.7jdk免安装绿色版,直接下载配置路径即可,内附安装说明

2019-07-29

空空如也

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

TA关注的人

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