自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(22)
  • 资源 (3)
  • 收藏
  • 关注

原创 Mac M1芯片编译openjdk报错问题解决

我们可以加行代码,输出看下VAR_CPU_BITS具体是多少,结果输出的是32,但是其实我们的系统本身是64位的,所以你把编译命令改为sudo sh configure --with-target-bits=32后面依然会报错的。然后再试下命令:sudo sh configure --with-target-bits=64。使用命令: sudo sh configure --with-target-bits=64。

2024-02-18 14:20:42 617 1

原创 prometheus 服务java服务接入基础镜像配置

把/actuator/prometheus接口更换为/actuator/prometheus-check management.endpoints.web.path-mapping.prometheus=prometheus-check。# 只有加这个配置,就会去掉安全检查接口的/actuator层,指向接口例如:上面的health会换成/healthcheck,prometheus检查接口会更换成:curl localhost:9998/prometheus。

2024-01-30 09:22:14 184

原创 JFR学习笔记,java飞行记录器

JFR全名:java flight recoder java飞行记录器,名字定义参考飞机黑匣子而来,顾名思义就是为了在java进程崩溃时也可以提供有效的运行参考数据,抓取的数据格式为jfr,可以使用jmc工具来进行分析,jmc工具可以默认给出分析意见,以供快速的分析定位问题,//Java程序启动时开启JFR并记录jfr文件。//对正在运行的java进程启动JFR。//对正在运行的java进程关闭JFR。//检查当前java进程的JFR状态。//检查当前java进程的JFR配置。//查看运行的java进程。

2024-01-30 09:16:06 678 1

原创 manjaro 21 修改.zshrc配置环境变量失败的解决办法

manjaro 21 使用.zshrc配置时报 commond not found: dircolors异常

2024-01-29 17:01:12 259

原创 java服务性能分析、压测推荐开启参数

其中,我们设置了最大堆内存和初始堆内存为2GB和1GB,启用了详细的垃圾回收日志打印,打印了垃圾回收的时间戳,打印了即时编译的详细信息,并解锁了诊断VM选项。通过这些参数,我们可以观察应用程序的内存使用情况、垃圾回收性能以及JIT编译的过程。同时,可以使用其他工具(如VisualVM、JProfiler等)来分析gc.log和JIT编译日志,进一步进行性能分析和优化。下面是在进行性能分析时开启的参数,但在生产环境中要避免使用以下参数,以免对性能和稳定性造成不必要的影响。

2023-09-10 10:56:09 132 1

原创 基于回溯算法的八皇后问题Java实现

八皇后问题是一个古老而著名的问题,是回溯算法的典型例题。该问题是十九世纪著名的数学家高斯1850年提出:在8X8格的国际象棋上摆放八个皇后,使其不能互相攻击,即任意两个皇后都不能处于同一行、同一列或同一斜线上,问有多少种摆法。其中回溯算法的核心是递归地在每一列中遍历每一行,判断当前位置是否可以放置皇后。如果无法放置,则回溯到上一列。1854年在柏林的象棋杂志上不同的作者发表了40种不同的解,后来有人用图论的方法解出92种结果。下面基于回溯算法的八皇后问题Java实现,代码中有详细的注释说明每一步的逻辑。

2023-03-07 17:13:27 277

原创 基于分治算法的归并排序Java实现

归并排序算法的Java实现,其中递归地将左右两个子数组分别进行归并排序,然后将左右两个有序子数组合并成一个有序数组。归并排序算法的时间复杂度为O(nlogn)

2023-03-07 17:08:27 153

原创 动态规划的最长公共子序列算法的Java实现

动态规划的最长公共子序列算法的Java实现,代码中有详细的注释说明每一步的逻辑。

2023-03-07 17:07:34 532

原创 java实现贪心算法,解决背包问题

背包问题是指有一个固定大小的背包,需要在一系列物品中选择一些放入背包中,以使得物品的总价值最大。每个物品有一个重量和一个价值,背包有一个最大容量,不能超过这个容量。

2023-03-07 16:36:37 1018

原创 MongoDB基础初探

下图就是MongoDB存储的数据结构,MongoDB的一条记录就是一个文档,文档则是使用KV组成的数据结构,很类似我们日常使用中的JSON对象,在MongoDB中字段的类型是字符型,同时属性值也可以包含其他文档,普通数组和文档数组。它主要适合用于结构上不同意的数据记录,比如用户操作记录,订单流水记录,用户评论记录等,因为这些记录不需要严格的西端要求,如果使用Mysql之类的数据库来进行存储,那么字段会非常多,而且扩展也非常困难,并且每个记录值的字段都不一样,会造成非常多的空字段记录,带来表稀疏的问题。

2023-03-07 16:11:49 228

原创 第一章:idea插件开发环境搭建

IntelliJ IDEA 简称 IDEA,是 Jetbrains 公司旗下的一款 JAVA 开发工具,支持 Java、Scala、Groovy 等语言的开发,同时具备支持目前主流的技术和框架,擅长于企业应用、移动应用和 Web 应用的开发,提供了丰富的功能,智能代码助手、代码自动提示、重构、J2EE支持、各类版本工具(git、svn等)、JUnit、CVS整合、代码分析、 创新的GUI设计等。idea插件开发学习

2023-03-07 15:57:29 2534

原创 java注解使用@Async时因为返回值为基础数据类型而报错

今天在排查日志的时候发现,有个服务的定时任务一直在报错,但是却没有影响报错的地方代码执行,报错日志如下: Error:"Null return value from advice does not match primitive return type"代码如下:报错原因是代码中使用了@Async来做了异步线程,原理是aop做了一层切面处理,底层是通过jdk动态代理来实现的,在动态代理的返回值为void就return null,否则就 return method.invoke(my, a

2023-03-07 14:13:11 477

原创 《重构》第二章、重构的原则---重点提取

为何重构:经常性的重构,有助于维持代码架构该有的形态如果没有重构,程序的内部设计(或者说架构)就会逐渐腐败变质。当只为短期目标而去修改代码时,经常没有完全理解代码的整体设计,于是代码会失去原有的结构。程序员将会越来越难以通过阅读源码理解原来的设计。代码结构的流失就会有累积效应。重构使软件更容易理解计算机多化时间周期来编译,并不重要,重要的是自己写的代码能不能被后面的程序员所读懂,如果一个改动需要一周的时间去修改,如果读懂原来的代码,可能只需要一个小时就...

2022-05-18 19:26:58 318

原创 java自定义注解,实现方法重试,支持自定义重试策略

这两天在做项目过程中,需要请求外部服务的api需要考虑重试,为了代码优雅,决定使用注解的方式进行重试的配置,手写了个注解,支持配置:重试的次数支持自定义策略:1、延迟重试、即每失败一次下次重试延迟2、根据配置的错误码code开启重试,不传默认所有失败都重试 3、redis的策略配置,方法失败,删除特定的redis非常好用,有问题可以提问,看到会回复,删除了公司...

2021-10-22 14:35:57 990 2

原创 Git每次pull都需要输入密码的问题解决,完美解决Enter passphrase for key '/root/.ssh/id_dsa.pub

git pull的时候总让输入密码出现:Enter passphrase for key '/root/.ssh/id_dsa.pub在网上搜了半天,跟同事一起看了很久,感觉很奇怪,csdn和简书都是这样的解决办法,一点鸟用没有后来在git官方文档找到问题了https://git-scm.com/book/zh/v2/%E6%9C%8D%E5%8A%A1%E5%99%A8%E4%B8%8A%E7%9A%84-Git-%E7%94%9F%E6%88%90-SSH-%E5%85%AC%E9%92.

2020-05-12 11:19:26 2736 2

原创 python 连接操作mongodb数据库

1、python连接mongodb需要引入MongoClient包在命令行执行 命令:pip install MongoClient废话不多说,直接进入正题#!/usr/bin/python# -*- coding: utf-8 -*-import jsonfrom pymongo import MongoClientclient = MongoClient("m...

2020-04-21 23:31:47 348

原创 optparse在python中的使用,接收脚本参数很方便!!!

optparse模块主要用来为脚本传递命令参数,采用预先定义好的选项来解析命令行参数。说白了就是启动脚本的时候传入参数,方便做个性化参数输入话不多说上代码:#!/usr/bin/python# -*- encoding: utf-8 -*-import optparseusage="python %prog -H <target Name type string&...

2019-07-03 17:12:33 273

原创 python多线程执行任务,读取文件,批量发请求

#!/usr/bin/python# -*- coding: utf-8 -*-import requestsimport threadingimport timeimport Queueimport json,urllib2# 添加线程 创建5个线程名threadList = ["Thread-1", "Thread-2", "Thread-3", "Thread-4", ...

2019-04-02 11:08:24 7456

原创 scala添加redisson分布式锁,java一样适用

scala分布式锁配置,工作中有使用分布式架构,当请求进入该方法时,不希望其他同一请求也进入,可以加上redisson分布式锁,分布式锁配置:(文件名为:redisson.yaml)singleServerConfig: #连接空闲超时,单位:毫秒 idleConnectionTimeout: 10000 pingTimeout: 1000 #连接超时,单位:毫秒 con...

2018-06-07 10:49:08 465

原创 scala笔记 隐式转换、模式匹配

Scala中Json类对case class类做转换json字符串操作时,需要对case calss类做隐式转换,转换有代码编译顺序要求,最里层定义的case class优先定义在最上面,先做编译,越靠外层定义在后面。implicit val userSimpleResponseDTOfmt = Json.format[UserSimpleResponseDTO]implicit val attr...

2018-06-07 10:16:44 264

原创 idea控制台乱码解决,完美解决控制台输出乱码

第一步:修改intellij idea配置文件:找到intellij idea安装目录,bin文件夹下面idea64.exe.vmoptions和idea.exe.vmoptions这两个文件,分别在这两个文件中添加:-Dfile.encoding=UTF-8第二步:找到intellij idea的file---settings---Editor---FileEncodings的GlobalEnc...

2018-06-07 10:12:04 490

原创 spring 注入对象报错,org.springframework.beans.factory.BeanCreationException: Error creating bean with name

这是由于spring 注入时没有找到对应注入的对象,也就是说使用的这个类,没有注入成功,所以报出了错误创建bean昨天遇到这个问题,不一定所有人都是这个问题导致的,但是这是个不容易注意的问题,先上出错图最终排查出来是因为 在注入dao层时,使用service注解的时候,当前的这个类是abstract 修饰的,所以注入失败代码如下:只要把abstract删掉就可以注入成

2017-10-17 10:40:20 723

mongodb面试基础操作学习

mongodb面试基础操作学习

2023-03-07

jdgui反编译工具,非常好用

jdgui最好用的java反编译工具,之间把class文件拖过来就能编译

2017-12-09

poi-3.0.2 生成excel表工具

poi-3.0.2 生成excel表工具,java生成excel表格时使用

2017-12-09

mysql-connector-java-5.1.42-bin-

mysql驱动字符串,连接mysql使用,非常方便,版本号为5.1.42

2017-12-09

空空如也

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

TA关注的人

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