自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(102)
  • 收藏
  • 关注

原创 java 求解 一元N次方程

【代码】java 求解 一元多次方程。

2024-09-10 17:01:47 263

原创 JAVA 求log a x

这其实是一个数学题, 利用公式 log a x = lnx / ln a。

2024-09-10 10:14:09 124

原创 Java 快速求解x的x次幂结果为10

如果x的x次幂结果为10(如图所示),你能计算出x的近似值吗?请把x的值计算到小数后6位(四舍五入),并填写这个小数值。显然,这个值是介于2和3之间的一个数字。通过运算3次,得到结果为2.506184。

2024-09-06 17:07:07 212

原创 java 代码编写细节-提升性能

根据提供的数据,getter/setter的性能已经接近直接属性访问,大约慢50%,这意味着在大多数情况下,没有必要担心getter/setter的性能而采用直接属性访问‌1。在Java中,过度的封装可能会导致一些潜在的问题,如增加了系统的复杂性、可能降低了系统的性能、可能降低了代码的可读性和可维护性。可能降低了系统的性能:在Java中,访问对象的私有属性需要通过getter和setter方法,这可能会导致一定的性能损失。适度封装:在保证代码可读性和可维护性的前提下,适当的封装是必要的。

2024-09-03 17:13:27 641

原创 java 解析csv文件

2.代码,在处理中文时需要考虑字符集的转换。

2024-08-29 17:06:19 177

原创 vue 组件通信的解决方案

Vue组件间通信是Vue开发中的一个常见问题。可以使用事件总线(Event Bus)或Vuex进行通信。可以使用provide/inject或事件总线进行通信。可以使用Vuex管理状态,通过状态管理进行跨组件通信。父组件可以使用props向子组件传递数据。方法触发事件,父组件可以监听这些事件。vue 组件通信的场景和方案。

2024-08-23 18:39:37 346

原创 JAVA Unsafe 类介绍

Unsafe 类提供了低级别、不安全的原始操作,这些操作可以直接访问内存。由于这些操作非常强大,可以直接操作内存,因此也非常危险。如果使用不当,可能会导致严重的内存泄露问题。CAS 操作:提供了 CompareAndSwap 等原子操作。直接内存访问:可以分配和释放内存,创建和操作对象。线程和锁:提供了线程的挂起和恢复、定时等待等操作。可见性操作:提供了一些方法来保证线程间的可见性。

2024-08-21 20:36:42 432

原创 java Date 转 LocalDate

1.Date 转 LocalDate。2. LocalDate 转 Date。

2024-08-12 16:06:13 597

原创 MYSQL 删除一个字段前,判断字段是否存在

如果是mysql 版本高于5.7.5。

2024-08-09 14:11:19 502

原创 mysql 分区管理

5.查询一个表的分区信息。

2024-08-06 14:41:45 158

原创 mysql 保存或修改 的实现方式

‌如果发现表中已经有此行数据(‌根据主键或唯一索引判断)‌,‌则先删除此行数据,‌然后插入新的数据。‌这种方式在处理重复键时会涉及到数据的删除和重新插入,‌可能会对性能产生影响。操作主要是更新操作,‌数据库可以更有效地优化这类操作,‌尤其是在涉及大量数据时。在遇到重复键时,‌只执行更新操作,‌不会删除原有数据,‌从而避免了不必要的全表扫描和数据重建,‌提高了性能2。那样删除其他列的原有值。:‌在实际业务场景中,‌当需要更新或插入部分列的数据时,‌应使用。,‌因为它允许只更新或插入部分列的数据,‌而不会像。

2024-07-31 15:38:57 243

原创 springboot CORS error 跨域问题解决

在前后端分离的项目中需要解决跨越问题。

2024-07-31 10:56:48 135

原创 CountDownLatch java 多线程下统一处理

是 Java 并发库中的一个同步工具类,它允许一个或多个线程等待一系列指定操作完成。实例,初始计数器设置为 5,然后启动了 5 个线程,每个线程完成自己的任务后调用。的计数器减 1,当计数器达到 0 时,所有等待的线程将被释放。这个只能用于线程只使用一次,如果线程时复用的就不能使用了。主线程等待直到计数器为 0,然后继续执行。方法用于阻塞当前线程直到。使用示例,其中创建了一个。

2024-07-31 10:53:40 206

原创 LongAdder 用于累加操作

是 Java 并发包中的一个用于高并发场景下性能优良的原子操作类,主要用于累加操作。

2024-07-31 10:44:22 134

原创 spring 同类方法调用事务失效解决办法

AopContext.currentProxy()方法的使用场景还包括:‌。

2024-07-18 17:56:05 510

转载 java 阿尔萨斯使用

Arthas 是一款线上监控诊断产品,通过全局视角实时查看应用 load、内存、gc、线程的状态信息,并能在不修改应用代码的情况下,对业务问题进行诊断,包括查看方法调用的出入参、异常,监测方法执行耗时,类加载信息等,大大提升线上问题排查效率。

2024-07-15 17:39:58 32

原创 jdk1.8 ConcurrentHashMap 源码分析

ConcurrentHashMap 1.8 使用synchronized 和CAS 实现。记住:1.8没有分段锁不要混淆了,分段锁是1.7中的。

2024-07-09 20:04:21 328

原创 CAS乐观锁快速实现

【代码】CAS乐观锁快速实现。

2024-07-09 19:35:02 122

原创 es 倒排索引

由于Elasticsearch是基于Lucene的,实际上是Lucene提供了倒排索引的结构和算法。在Elasticsearch中,你不需要直接操作倒排索引树,因为这些是由Elasticsearch的索引过程在后台自动创建的。倒排索引树(TRee)通常指的是Elasticsearch中用于支持高速搜索的一种数据结构。它是一种树状结构,可以通过特定的词项(terms)来快速定位包含这些词项的文档。在Elasticsearch中,倒排索引树是用于文本字段的,它允许你根据词项快速查询包含这些词项的文档。

2024-04-11 18:36:45 492

原创 java es相关操作

在Elasticsearch中,评分是一个复杂的过程,它涉及到文档与查询的匹配程度。评分是基于文档与查询中的某个字段相关性来计算的。es是使用DSL语句进行查询的,java提供了相关api,生成最终的DSL语句,下面代码中的boolQueryBuilder对象中就有最终的DSL语句。四.es评分修改(评分是搜索的结果排序依据是es中一个重要的点)使用索引时的设置,如分析器,提高某些字段的重要性。创建一个新的索引,并指定所需的分片数量。将字段的评分累加到文档级别的评分中。使用函数查询,调整字段的权重。

2024-04-11 18:04:58 858

原创 Parallel GC 最佳参数

JVM的Parallel(吞吐量)垃圾收集器是以达到一定的吞吐量为目标的收集器,适合运行在多核处理器上的后台应用。Parallel GC的最佳参数取决于具体应用的工作负载和目标。: 设置垃圾收集时间占程序运行时间的比例,默认为99,即1%的时间用于GC。: 设置JVM堆的最大和最小大小,确保堆大小对GC影响最小,减少GC频率。: 启用Parallel GC,用于整个GC堆(包括新生代和老年代)。: 设置GC的最大暂停时间(目标时间),以毫秒为单位。: 启用Parallel GC,用于新生代。

2024-03-27 20:13:50 479

原创 Java luence 介绍

Lucene中的分析器是一个文本分析的功能。简单地说,它接收文本(比如文档)分解成单词,并返回token对象流。Analyzer从文档中提取出token对象后,与其field进行结合后,就形成term分词概念了。

2024-03-27 15:38:45 931

原创 Java 使用api打印内存

【代码】Java 使用api打印内存。

2024-03-20 16:46:14 135

原创 Java 布隆算法实现

其原理就是用hash算法和位运算来实现,达到的效果是不存在的一定不存在,存在的不一定是真的存在。布隆算法是用来标记一个值是否存在,我们在很多场景下需要用到这样的算法,比。方说使用redis做缓存时防止缓存穿透。

2024-03-06 15:18:46 425

原创 java poi 删除word文档中的空白页

这里只判断最后一页是否为空白页。

2024-03-06 09:16:32 1110 1

原创 java 建立SSH隧道连接

在开发过程中经常出现一种情况,就是本地可以想访问A机器但是网络无法访问,但是本地却可以访问B机器而B机器可以访问到A机器,此时就可以使用隧道,建立隧道的工具有很多,但是有些公司对工具的使用有限制,我这里给出了用java代码实现的方式。建立隧道通常是指建立一个网络连接,将数据从一个网络端口传输到另一个网络端口。在Java中,可以使用Socket类来实现建立网络连接,并通过输入输出流来传输数据。

2024-03-05 15:02:37 596

原创 java 查看jvm参数命令和使用

可以连接到正在运行的Java进程,然后查看内存使用情况、线程状态等信息。打开VisualVM,选择要监视的Java进程,并确保启用了相关插件(如"Visual GC"和"Memory")。VisualVM是一个强大的性能监控和故障排除工具,它可以与JVM进行远程或本地连接,提供了详细的GC相关信息。在"Visual GC"选项卡下,您将看到有关各个GC阶段的统计信息,以及堆内存使用图表和关联的监控数据。该命令将显示GC的统计信息,包括堆内存使用情况、各个GC阶段的执行次数和时间等。打开命令提示符或者终端。

2024-01-09 19:45:37 782

原创 Java 4种引用的用途

当一个对象只被虚引用变量引用时,垃圾回收器会将该对象加入引用队列中,而不是直接回收该对象。当一个对象只被软引用变量引用时,垃圾回收器将在内存不足时尝试回收该对象。在并发编程中,软引用经常被用来实现内存敏感的缓存,例如,可以使用软引用来缓存最近使用的图片或文本,一旦内存不足,垃圾回收器就会回收这些对象,从而释放内存。在并发编程中,弱引用经常被用来实现对象监视器,例如,可以使用弱引用来监视一个对象的状态,当对象被回收时,该对象的状态也将被相应地清除。Java 有四种引用,分别为强引用,软应用,弱引用,虚引用。

2024-01-06 19:55:09 419

原创 sprint boot url 过长 导致400 bad-requst的问题解决

虽然超长的原因是url过长,但是我debug看源码是head 超长了,由此可见url参数可能是放在head中。由于定位的截图在公司内网,无法截图,直接上解决办法。

2023-08-07 21:04:17 394

原创 Java poi 添加横向页面XWPFDocument

添加横向页面的步骤位,填分割文档,再调整宽度。

2023-06-19 17:36:58 1385

原创 Java poi 删除docx文档批注XWPFDocument

【代码】Java poi 删除docx文档批注。

2023-06-19 14:31:22 1147

原创 Java 使用正则提取文本中所有的匹配数据

【代码】Java 使用正则提取文本中所有的匹配数据。

2023-03-24 17:05:53 2132 1

原创 Java 算法题目 走楼梯

题目: 有一个人要上20级台阶, 这个有有可能一次走两级,也可能一次走一级,问有多少种走法代码如下:

2022-12-06 14:14:11 281

原创 spring boot + mybaties-plus 数据库字段加解密

数据库突然要求对某些字段进行加密,因此我们在进行查询时候需要对字段进行加解密,此时需要对字段进行处理,但是如果字段用的地方比较多的话,修改还是挺复杂的,这里只是给大家一个方法,不一定是最好的,但是比较方便。就是使用。

2022-11-10 15:35:18 1554

原创 Caused by: class com.spire.office.packages.sprdraa: Fail to save. Saving of requested font type is n

如果没有就需要安全字体,可以在linux上安装字体(自行百度)使用spire添加水印时报错,这个时字体原因导致的。去服务器上看一下是否有这个字体。fc-list|grep 宋体。

2022-11-09 11:22:32 2054

原创 Java 命令运行springboot 项目jar包中的其它main方法

【代码】Java 命令运行springboot 项目中的其它main方法。

2022-11-09 11:02:09 698

原创 如何在拦截器中检验方法入参是否和json是否一致

安全组提了一个要求,json中的字段,必须是实体中有的成员,因此使用拦截器拦截了所有请求并在其中进行了判断使用以上代码就可以在拦截器中利用反射进行校验了。

2022-10-19 18:09:37 786

原创 java 电子围栏,判断点是否在一个由多个点围成的多边形内部

直接上代码,并且附上了图形化的测试代码,

2022-10-19 17:33:45 373

原创 linux systemctl 配置启动程序

本文已filebeat 为例子filebeat.service 中输入如下内容启动即可

2022-07-13 16:40:45 306

原创 skywalking - java 部署和自定义修改插件

skywalking 由三部分组成web 前端collect 收集器 agent 探针(用于java应用中监听程序) 下载collect + webhttps://dlcdn.apache.org/skywalking/9.1.0/apache-skywalking-apm-9.1.0.tar.gz config中的application.yml 为collect的配置文件我部署的为单机 ,使用elasticsearch 存储,所以需要修改配置文件 启动 bin目录下的startup.bat 为收集器+

2022-07-13 09:54:41 723

空空如也

空空如也

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

TA关注的人

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