![](https://img-blog.csdnimg.cn/20201014180756738.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
Java
文章平均质量分 77
茫茫人海一粒沙
这个作者很懒,什么都没留下…
展开
-
使用OpenRewrite自动做框架升级比如Spring Boot
OpenRewrite 用于大规模自动化源代码重构OpenRewrite 是一个源代码自动重构生态系统,使开发人员能够有效消除其存储库中的技术债务。它由一个自动重构引擎组成,该引擎运行预先打包的开源重构方案,用于常见框架迁移、安全修复和风格一致性任务,从而将您的编码工作从几小时或几天减少到几分钟。OpenRewrite Gradle 插件和 OpenRewrite Maven 插件等构建工具插件可帮助您一次在一个存储库上运行这些配方。原创 2024-03-19 22:13:37 · 1804 阅读 · 0 评论 -
Flink hello world
Flink 的版本附带了许多示例作业。您可以快速将这些应用程序之一部署到正在运行的集群。利用java 代码运行第一个flink hello world.下载并且解压Flink。原创 2024-03-05 22:39:03 · 530 阅读 · 0 评论 -
Spring auto-configuration的使用
在构建Maven项目时,使用Spring Boot自动配置可以使项目更易于集成和使用。本文将向您展示如何创建一个Maven项目,并使用Spring Boot自动配置使其能够被其他组件方便地依赖。原创 2024-02-04 14:39:33 · 465 阅读 · 0 评论 -
高可用eureka服务注册与发现代码例子
1. Eureka server 不能用localhost,否则不会复制注册信息到peer Eureka上。相关代码PeerAwareInstanceRegistryImpl,ApplicationResource.addInstance(), PeerEurekaNodes.resolvePeerUrls()原创 2023-10-15 15:07:10 · 204 阅读 · 0 评论 -
GCviewer分析java垃圾回收的情况
进入target目录,运行 java -jar gcviewer-1.37-SNAPSHOT.jar。2. 运行maven命令打包。在你启动的java项目里,加入下面vm参数来输出gc日志并打印日志文件。1.在github上下载。原创 2023-08-14 23:00:44 · 329 阅读 · 0 评论 -
Java中对象锁与类锁的比较(synchronized)
在Java中,代码块一次只能由一个线程执行。另外,java支持多线程并发执行。这可能会导致两个或多个线程同时访问相同的字段或对象。同步是使所有正在执行的并发线程保持同步的过程。同步避免了由于共享内存视图不一致而导致的内存一致性错误。当一个方法被声明为时;线程持有该方法对象的monitor或lock对象。如果另一个线程正在执行同步方法,则您的线程将被阻塞,直到该线程释放监视器。请注意,我们可以在类中定义的方法或块上使用synchronized关键字。原创 2023-07-20 13:49:41 · 169 阅读 · 0 评论 -
微服务,Docker, k8s,Cloud native 云原生的简易发展史
微服务,Docker, k8s,Cloud native 云原生的简易发展史原创 2023-01-30 16:39:26 · 725 阅读 · 2 评论 -
项目迁移到OpenShift过程中遇到的问题总结
【OpenShift】项目上OpenShift遇到的问题总结原创 2023-01-18 19:14:02 · 1246 阅读 · 0 评论 -
[GIT] GIT拆分仓库--不丢git提交历史记录
如果你的代码仓库里有多个目录,你想把其中一个目录拆分出去变成一个独立的代码仓库。重要的一点是拆分的过程中要保留git提交历史记录。原创 2023-01-17 17:51:43 · 1522 阅读 · 0 评论 -
Kubernetes之PV与PVC
Kubernetes之PV与PVC原创 2022-12-31 15:01:57 · 1045 阅读 · 1 评论 -
robocode 相关的总结
robocode 相关的总结原创 2022-12-02 16:31:56 · 1049 阅读 · 0 评论 -
HTTPS工作原理
HTTP(超文本传输协议),HTTP是tcp/ip组中的协议之一,也是互联网上应用最为广泛的协议之一,所有的WWW(万维网)文件都必须遵循这个标准。而设计HTTP协议的最终目的是用来在互联网上传输HTML文件。原创 2022-09-21 16:34:40 · 3258 阅读 · 1 评论 -
怎么查看证书里是不是包含私钥和公钥
怎么查看证书里是不是包含私钥和公钥原创 2022-09-20 18:32:10 · 2031 阅读 · 0 评论 -
利用kubernetes部署docker的镜像文件
利用kubernetes部署docker的镜像文件原创 2022-08-28 17:44:29 · 1645 阅读 · 0 评论 -
Docker上部署并运行SpringBoot项目
Docker上部署并运行SpringBoot项目原创 2022-08-28 16:39:21 · 553 阅读 · 0 评论 -
mac上安装docker并运行kubernetes
在安装mac上安装docker并运行kubernetes原创 2022-08-27 16:37:47 · 1101 阅读 · 0 评论 -
通过系统属性改变Log4j appender
通过系统属性改变Log4j appender原创 2022-08-10 15:11:29 · 246 阅读 · 0 评论 -
Drools rules 入门总结
目录1. 背景2. 简单例子程序2.1 pom. xml文件里加drools相关的依赖2.2新建kmodule.xml配置文件2.3 drl 文件2.4新建DroolsTest测试类3.Drools规则引擎调用insert、update、modify、delete函数后重新触发规则匹配的差异及no-loop属性使用no-loop属性insert插入update/modify更新delete/retract删除1. 背景暂无2. 简单例......原创 2022-05-29 16:41:26 · 607 阅读 · 0 评论 -
JavaAgent的使用总结
Java Agent出现在JDK1.5版本以后,它允许程序员利用agent技术构建一个独立于应用程序的代理程序,用途也非常广泛,可以协助监测、运行、甚至替换其他JVM上的程序,先从下面这张图直观的看一下它都被应用在哪些场景:...原创 2022-04-15 22:46:54 · 3446 阅读 · 1 评论 -
ThreadPoolExecutor 例子
1. 重写RejectedExecutionHandler线程池在BlockingQueue用完的情况下,会执行这里。可以利用这个方法把数据存下来。等空闲的时候在运行。import java.util.concurrent.RejectedExecutionHandler;import java.util.concurrent.ThreadPoolExecutor;public class UserRejectHandler implements RejectedExecutionHandle原创 2022-03-06 23:13:54 · 835 阅读 · 0 评论 -
Java Spring连接Tibco Queue 总结
发送信息到Tibco Queue的完整代码。package com.jms;import java.util.Properties;import javax.jms.ConnectionFactory;import javax.jms.JMSException;import javax.jms.Message;import javax.jms.Session;import javax.naming.Context;import org.junit.BeforeClass;im..原创 2022-02-28 11:21:48 · 998 阅读 · 2 评论 -
Eclipse Memory Analyzer分析内存使用总结
前言内存泄露和内存溢出的区别:内存泄露从老年代的增长情况看是缓慢上升的, 最终达到老年代上限才会导致溢出,有些内存泄露可能需要很长的时间发生, 所以说内存泄露更隐蔽, 不像内存溢出那样容易暴露(内存溢出直接抛出OOM), 而且内存长时间得不到释放会导致服务性能越来越差、gc时间变长、响应变慢:1. 安装在Eclipse help -> Eclipse Marketplace下搜索Memory:按照操作流程安装完成,重启Eclipse.2. 利用MAT分析内存堆获取Hea.原创 2022-02-18 15:25:53 · 12687 阅读 · 0 评论 -
OpenFeign, Zuul, Gateway相互不兼容的问题总结
版本Lib Vresion spring-cloud-starter-gateway 3.1.0 spring-cloud-dependencies 2021.0.0 spring-cloud-starter-netflix-zuul 2.2.6.RELEASE spring-cloud-starter-openfeign 3.1.0 1. Zuul 与OpenFeign 一起使用的问题错误信息jav.原创 2022-02-17 11:42:12 · 3229 阅读 · 0 评论 -
ElasticSearch简单搭建
1. ElasticSearch 下载Get Started with Elasticsearch, Kibana, and the Elastic Stack | Elastic当然你也可以下载Kabana2. 下载后解压3. 打开config/elasticsearch.yml文件,修改下面参数为falsexpack.security.enabled: false4. 通过下面命令启动ElasticSearch.bin\elasticsearch5. 通过..原创 2022-02-14 23:55:34 · 1342 阅读 · 0 评论 -
Log4j2 升级到2.17.1踩过的坑
目录1. 如果你用的是spring boot2.x 怎么升级方便2.Caused by: java.lang.NoSuchMethodError: com.lmax.disruptor.dsl.Disruptor3. Log4j2 error-ERROR StatusLogger Unrecognized format specifier版本Library Current Upgraded Lo4j2 related jar * 2.17.1 ..原创 2022-02-08 11:06:30 · 7057 阅读 · 1 评论 -
Spring boot升级到2.3.2.Release和Spring framework升级到5.28.Release踩过的坑
版本Library Current Upgraded Spring Boot 1.5.19.RELEASE 2.3.2.RELEASE Spring Framework 4.3.22.RELEASE 5.2.8.RELEASE 1. 利用下面方法启动spring boot 项目是系统参数不生效[02:15:30][Step 2/2] The system property 'syst1' must be defined相关命令mvn spri原创 2022-01-20 19:50:39 · 4817 阅读 · 1 评论 -
JDK 8 新特性- 学习中
1.List Stream distinct() 去重List Stream 对象调用distinct()方法,distinct()方法依赖hashCode()和equals()方法。判断两个对象是否相同原理与HashMap定位key原理相同,先计算hashCode,如果hashCode相同继续调用equals()方法例子1import java.util.Arrays;import java.util.List;import java.util.stream.Collectors...原创 2021-09-30 17:54:51 · 194 阅读 · 0 评论 -
[JAVA-坑]CGLib动态代理引起的空指针异常
理解了这个应该就理解了CGLib动态代理有final的方法引发的空指针问题的原因了在main函数里new了一个B类的实例,并调用了setName方法,实际上执行的是target的setName方法,设置的是target的字段name,B实例的字段name仍然为空。调用notFinalMethod方法也是调用target的方法并能把target的字段name打印出来。但是finalMethod方法由于有final修饰符,所以不能在B中重写,当调用finalMethod方法时,就只能乖乖地调用B本身的fina原创 2020-07-07 19:02:28 · 887 阅读 · 0 评论 -
JMS学习之ActiveMQ-简单使用
1.下载 ActiveMQ 包在ActiveMQ 官网下载可以去官网下载:http://activemq.apache.org/download.html2、启动ActiveMQ启动ActiveMQ非常的简单。进入bin目录双击“activemq.bat”就启动运行了。因为ActiveMQ是用Java编写的,所以必须确保电脑已经安装了JDK。双击运行之后就可以在浏览器里面输入:http:...原创 2020-04-09 19:21:59 · 215 阅读 · 0 评论 -
Java Micro services: 传送唯一标识(request id)在Hessian call, rest API,JMS和Thread之间
背景介绍随着项目中要把原来的几个项目变成许多 MircoServices. 所谓的 Micro services化把一个大的项目。带来一一些其它的问题。比如怎么样更方便的查看log,因为项目都变成了一个一个小的项目了。每个项目的log 文件都在它们怎么自己的项目里。尽管我们用了ELK把所有的log 到发到Elastic search 通过 logstash. 但是没有办法把项目之间的log ...原创 2020-03-26 16:20:00 · 998 阅读 · 0 评论