自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 史上最简单的 ArrayBlockingQueue 源码解析

ArrayBlockingQueue的实质就是一个数组加上两个起始标志位。重要参数如下public class ArrayBlockingQueue<E> extends AbstractQueue<E> implements BlockingQueue<E>, java.io.Serializable { /** * Serialization ID. This class relies on default serializa

2020-10-21 17:29:31 118 2

转载 HikariCP数据库连接池中文使用手册

转载原文地址:https://blog.csdn.net/eguid/article/details/108635464HikariCP 数据库连接池迄今为止,性能最好,速度最快的数据库连接池。依赖项Java 8 thru 11 maven artifact: <dependency> <groupId>com.zaxxer</groupId> <artifactId>HikariC...

2020-09-18 13:52:09 645

原创 等待其他线程执行完后执行(CountDownLatch)

最近在测试LinkedBlockingQueue和LinkList的线程安全问题,即创建100个线程,每个线程往队列里面塞1000个值,当结束时查看当前线程的size,看size是否与对接真是数量相当。但是主线程无法知道什么时候其他所有线程啥时候执行完毕。所以采用CountDownLatch的方式执行。countDownLatch这个类使一个线程等待其他线程各自执行完毕后再执...

2020-01-15 17:20:22 301 1

原创 Spring Data JPA sql查询返回对象

问题概述:JPA主要适用于强对象关系映射的场景,但是再做查询时需要返回的结果千差万别。所以,当我们使用非数据库对象作为返回结果对象时,@Datapublic class testDTO { Integer ageSum; Integer count;}@Repositorypublic interface TestDTORepository exte...

2019-08-15 18:17:06 2088 1

原创 lombok引发的血案

翻开它编译完的文件发现,lombok它从写了equals方法,并且方法比较中不包含子类属性的比较;然而lombok再给我们带来便利的同时,却有可能悄无声息的带来各种代码问题;一直以为lombok是一个无比牛叉的省代码工具,感觉再也不用,好爽;当我们用肉眼可见明明不想的的对象比较时,返回的确实equals;仅以此文,惊醒下因为lombok而导致的生产事故!然而就如此简单的代码却可能存在着两个对象比较的隐藏问题。到此为止,lombok的比较对象问题昭然若揭;今天笔主就遇到了一个引发生产事故的bug;

2024-01-18 16:35:47 419 1

原创 linux查询日志中存在的关键字

tail -f 日志文件 |grep -iC 10 关键字。-A -B -C 后面都跟阿拉伯数字。总体来说,-C覆盖面最大。-A是显示匹配后和它后面的n行。-B是显示匹配行和它前面的n行。-C是匹配行和它前后各n行。-i:忽略关键字大小写。

2023-12-28 14:44:59 436

原创 IDEA中表明或者字段找不到时报红

路径 File | Settings | Languages & Frameworks | SQL Dialects。当我们选择某一个sql方言的时候,xml配置会按照指定规则校验sql是否规范,并给出提示。取消sql方言,设置sql方言为None。设置完重启idea既可。idea 中mysql的sql语句报红,无论表名还是表字段。是由于sql方言导致的。

2023-12-08 16:10:58 653 1

原创 大乐透是否中奖计算

前些天突然心血来潮买了20块钱的大乐透,开奖之后发现一个一个的核对太累了,心想,这计算有没有中奖不就是很简单的if,else过程嘛。嗯哼,写的过程中,发现中奖是真的难,前驱号码错一个,最多就4等奖,3000块,前驱要一个不错,才能中三等及以上大奖。前驱35个数字选五个,还得全中,计算器拿过来算算,感觉不如天上掉钱来的概率高。拜拜咯您嘞,我还是老老实实写代码吧。

2023-11-29 10:40:02 421 1

原创 docker 访问宿主机端口

ip 替换成 host.docker.internal。

2023-11-10 15:28:16 55

原创 idea如何拷贝maven中所引用的所有jar

请记住,这种方法只能拷贝 Maven 项目中已经引用的 JAR 文件,并不会获取其他非 Maven 依赖的 JAR 文件。如果您需要更复杂的依赖拷贝操作,可能需要考虑使用构建工具或脚本来实现。要拷贝 Maven 中引用的所有 JAR 文件,可以使用 Maven 提供的命令行工具和插件。请注意,这将包括项目的所有依赖项,包括传递性依赖项。使用 Maven Dependency 插件将 JAR 文件复制到目标目录。在命令行中进入包含 Maven 项目的根目录。这将复制所有的依赖 JAR 文件到目标目录。

2023-10-07 09:54:43 865 1

原创 如何把rocketmq注册成windows服务

注:TIMEOUT /T 10 /NOBREAK 表示命名服务启动后暂停10s中,等待命名服务启动结束后在启动broker节点。在rocketmq服务搭建的时候需要涉及到三个方面,命名服务,broker节点,以及可视化界面。接下来就可以通过winsw.exe插件或者sc create 命令把bat注册成服务了。把winsw.exe 拷贝过来,修改名称为rocketmq.exe。rocketmq.exe install即可注册服务。在这里就演示winsw的用法。cmd 去对应目录执行。

2023-06-10 11:55:04 444

原创 银行贷款等额本息,等额本金计算

【代码】银行贷款等额本息,等额本金计算

2023-02-15 17:40:48 169 1

原创 给特别规则FeignClient增加统一的RequestInterceptor

给特别规则FeignClient增加统一的RequestInterceptor

2023-02-03 11:38:36 1145

原创 fastJson 字符串为null时转化为““

package com.example.demo.test.imp;import com.alibaba.fastjson.JSONObject;import com.alibaba.fastjson.serializer.SerializerFeature;import lombok.Data;import java.util.ArrayList;import java.util.List;@Datapublic class test53 { private String .

2022-04-07 15:33:28 651 2

原创 mongodb如何像mysql一样更新字段数据

首先插入一条数据可以看到数据库里面成功插入数据mongdb不像mysql数据库一样可以灵活的操作数据,比如说mysql 中吧title的字段修改成description的小写形式时,只需要 update table1 set title= lower(description) where id = 10 就可以了。但是mongdb 中的update并不支持不同字段的相互作用关系。所以就要用到find的函数查询数据,然后在查询数据的基础上做修改。如:db....

2021-09-30 11:32:12 626

原创 mysql根据外键名称,查询所属表信息

constraint_schema:指的是数据库对应的名称constraint_name:指的是外键名称SELECT * FROM INFORMATION_SCHEMA.KEY_COLUMN_USAGE WHERE constraint_schema = 'databases' and CONSTRAINT_Name = 'fkName';

2021-05-25 14:37:23 1205 3

原创 springboot如何不加载自动装配项或添加自定义装配项

1.springboot如何读取自动装配对象通常情况下,springboot的自动装配会扫描每个包下META-INF下面的Spring.factories文件中的配置如图:文件内容如下:org.springframework.boot.autoconfigure.EnableAutoConfiguration=\org.springframework.boot.actuate.autoconfigure.AuditAutoConfiguration,\org.springframe

2020-12-08 10:27:48 1676 2

转载 虚拟机常用参数汇总

内存分配相关-Xmx 堆的大小上限-Xms 堆区内存初始内存分配的大小-XX:MaxPermSize 永久代上限-XX:SurvivorRatio Eden与Survivor区的比例-XX:+/-UseTLAB 是否使用TLAB来创建对象-XX:PretenureSizeThreshold 晋升老年代对象大小-XX:NewRatio 新生代(Eden+2S)和老年代的比值,4表示1:4GC相关-XX:+UseConcMarkSwerrpGC 指定老年代的GC收集器为...

2020-10-20 16:20:51 629

原创 protostuff序列化工具类

导入依赖:​ <!-- Protostuff --> <dependency> <groupId>com.dyuproject.protostuff</groupId> <artifactId>protostuff-core</artifactId> <version>1.0.8</version>

2020-10-12 17:51:32 387

原创 dispatcherServlet随手记

static 加载 dispatcherServlet.properties配置类onrefresh方法 init handler adapt等等调用Servlet方法->processRequest-》doService(request, response) -》doDispatch(request, response);1.checkMultipart2.getHandler3.getHandlerAdapter4.检查是否是get请求且checkNotModified通过..

2020-09-29 11:07:05 54

原创 springboot 加入 dubbo 的集成

我们知道dubbo的运行原理如图所示,服务端向注册中心注册服务,客户端订阅注册中心获取服务地址,然后在调用服务我们再此选用的注册中心为zookeeper(当然也可以选用nacos)1.下载并启动zookeeper2.搭建springboot项目,引入dubbo的jar包<dependency> <groupId>com.alibaba.boot</groupId> <artifactId>dubbo-spring-bo

2020-09-27 15:58:05 200

原创 activiti taskService.claim(String var1, String var2)方法介绍

ACT_RU_EXECUTION 实例表ACT_RE_PROF 流程定义表ACT_GE_BYTE_ARRAY bpmn的xml和普片存储ACT_RE_DEPLOYMENT 部署表ACT_RU_VARIABLE 各个步骤传入的valueable值ACT_RU_IDENTITYLINK 创建者,参与者,候选人等步骤处理流程记录表ACT_ID_USER 用户表ACT_ID_GROUP 分组表ACT_ID_MEMBERSHIP 用户分组关系对照...

2020-09-18 11:41:33 5760 1

原创 Spring Data Elasticsearch 进行查询时忽略大小写

springboot版本: 2.1.0.RELEASEspring-data-elasticsearch:elasticsearch版本

2020-08-11 11:20:10 2409

转载 disruptor 介绍

有些图可能无法显示了,可以见这里:https://www.yuque.com/simonalong/jishu/qhdcb2一、背景1.来源Disruptor是英国外汇交易公司LMAX开发的一个高性能队列,研发的初衷是解决内部的内存队列的延迟问题,而不是分布式队列。基于Disruptor开发的系统单线程能支撑每秒600万订单,2010年在QCon演讲后,获得了业界关注。2.应用背景和介绍据目前资料显示:应用Disruptor的知名项目有如下的一些:Storm, Camel, Log4j2,还.

2020-07-27 17:36:23 333

原创 IDEA 运行java web项目

有些时候我们用IDEA跑之前用eclipse中运行的项目的时候,总是不止所措。要不就是只展示html,要不就是不能部署成功。正确的IDEA部署java web项目如下:1.导入web项目到IDEA如非maven项目,导入时选择eclipse即可2.添加tomcat会发现系统提示No artifacts configured;先忽略这个提示,点击ok.此时运行tomcat时访问不了项目的,应为现在为止根本没有部署3.点击 project Struture按钮

2020-07-13 13:57:32 5109

原创 IDEA 快速定位错误快捷键

2020-07-02 16:04:42 1781 2

原创 LinkedHashMap实现Lru

package com.example.demo.test.imp;import java.util.LinkedHashMap;import java.util.Map;public class Lru { public static void main(String[] args) { lru<Integer,String> lru = new lru(4); lru.put(1,"1"); lru.put(2,"2");.

2020-07-02 14:29:14 111

原创 spring-retry的学习使用(指定@Recover方法)

最近研究了一下spring-retry框架地使用。spring-retry再1.3.0版中@Retryable增加recover属性,从而使得再异常重试失败后可以指定补偿方法执行。从而使得我们不需要每一个用到@Recover的地方都需要新建一个类。 @Retryable(recover = "compensateHi") @Override public Hello hi(String name) { try { Hello he.

2020-06-30 17:08:38 3182

原创 切面表达式的正确使用方式(jpa方法切面)

我们在使用jpa进行保存数据的时候,有时候业务逻辑需要在保存数据的时候做一些其他的事情,但是又碍于再代码种很多地方掉了保存接口,这是后想要每一处去修改保存方法,就显得太冗余,而且容易出错。其实再这个时候,可以使用切面的方式进行处理首先声明切点:@Pointcut(value = "execution(public *javax.persistence.EntityManager.persist(..))")private void getPointcut(){}再这里需要注意...

2020-06-19 16:28:35 1727

转载 mysql MVCC

MVCC下InnoDB的增删查改是怎么work的1.插入数据(insert):记录的版本号即当前事务的版本号执行一条数据语句:insert into testmvcc values(1,"test");假设事务id为1,那么插入后的数据行如下:2、在更新操作的时候,采用的是先标记旧的那行记录为已删除,并且删除版本号是事务版本号,然后插入一行新的记录的方式。比如,针对上面那行记录,事务Id为2 要把name字段更新update table set name= 'new_val.

2020-06-15 17:04:05 77

原创 docker镜像加载到本地

docker save -o 本地目录 镜像ideg:docker save -o ~/ruoyi.jar c183fb4d4ed5

2020-06-15 15:41:05 263

原创 Zookeeper占用8080端口

最新版本的Zookeeper目前使用了jetty并且占用了8080端口。修改端口可通过在 zoo.cfg 中新增参数admin.serverPort=指定端口默认的jetty访问可通过可通过http://localhost:8080/commands访问

2020-06-11 10:31:39 615

转载 mysql分隔符转行

再看mysql 分隔符转行的,看到这篇文章,写的非常好,转载纪念一下。原文地址:https://www.cnblogs.com/likaixin/p/11271756.htmlhelp_topic表是数据库mysql下的一个表 SUBSTRING_INDEX(s, delimiter, number)    返回从字符串 s 的第 number 个出现的分隔符 delimiter 之后的子串。 如果 number 是正数,返回第 number 个字符左边的字符...

2020-05-25 17:01:40 605

原创 自定线程池测试

package com.example.demo.test.ThreadPool;import java.util.concurrent.*;public class ThreadPoolTest { // 核心线程池大小 private int corePoolSize = 1; // 最大可创建的线程数 private int maxPoolSiz...

2020-03-26 16:15:35 69

原创 Swagger显示入参不全问题

目前大部分项目中使用Lombok去省去写get,set,构造器等n多重复方法,使java代码变得整洁,但class字节码文件不变。目前在使用lombok和swagger的时候碰到了问题在Cotroller的请求参数中写入Lombok省略的DTO对象,但是在swagger-ui的页面中参数显示不全。后比较字节码反编译和alt+insert生成的get,set方法,发现方法名不一致,即在D...

2020-03-23 16:31:55 2928 2

原创 Linux 下后台进程运行springboot项目

命令:nohup java -jar xxxxx.jar &xxxxx.jar 为你的jar包名,运行后需要查看日志的话在同目录下会生成一个nohup.out文件tail -fnohup.out就可以看到详细日志了...

2020-01-13 14:23:12 156 1

原创 mac系统导出自定义IDEA快捷键

相信很多小伙伴在重装IDEA,或者更换Mac电脑的时候需要重新配置IDEA快捷键的情况,下面介绍下如何导出自定义IDEA快捷键。IDEA再mac系统的默认配置的文件路径为:/Users/账号/Library/Preferences/IntelliJIdea2019.1当我们再IDEA中保存一个自定义的快捷键配置是.会在/Users/账号/Library/Preferences/...

2019-12-12 17:15:14 1414 5

原创 SpringDataElasticSearch查询时忽略大小写

我们在进行ElasticSearch查询时通常字段都是以@Field(type = FieldType.keyword) private String info;标注,再查询时,会发现条件是区分大小写的。这样再mysql与elasticSearch之间进行切换的时候就会发现查询结果不一致的情况。百度n久,都是针对9200的http接口请求的方式。处理方式如链接:h...

2019-11-11 14:08:46 2000 4

原创 JPA @PostPersist 和@PreUpdate回调函数中无法注入Bean得解决方案

@Autowiredstatic private TeacherService teacherService;@Autowiredstatic private TestService testService;@Autowiredpublic void init(TeacherService teacherService, TestService testService) { ...

2019-11-01 17:33:44 962 1

原创 ElasticSearch 5版本权限问题解决

在mac使用ElasticSearch时,出现了一个少见的错误,错误代码如下2019-10-15T09:16:46,036][INFO ][o.e.n.Node ] [] initializing ...[2019-10-15T09:16:46,093][ERROR][o.e.b.Bootstrap ] Exceptionjava.securi...

2019-10-17 14:33:35 1005 1

jdk1.8 zip压缩包

jdk1.8 zip压缩包,解压后,配置环境变量就可以使用

2023-08-01

servlet-api.jar

servlet-api,Http常用的jar包,当你的web开发环境报错时,可引入该jar包。

2020-06-01

空空如也

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

TA关注的人

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