自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 AntFlow 0.50版本重磅发布,新增低(无)代码工作流功能!

AntFlow是一款基于Spring Boot、MyBatis、Activiti和Vue3等主流技术开发的工作流引擎,深度定制以适应中国式办公需求,支持审批人去重、加批、转办、委托、打回、变更处理人等功能,完全可以作为钉钉工作流的开源替代方案。AntFlow致力于解决传统Activiti/Flowable工作流需要专业程序员绘制流程图、学习曲线陡峭、上手难、排查问题难、维护成本高等问题,是企业审批流和SaaS化工作流部署的理想选择。

2024-12-16 06:26:02 1110

原创 Antflow 0.50低代码表单操作介绍

在现代企业管理中,流程审批的高效性直接影响到工作的流畅度与生产力。最近,我发现了一个非常有趣的项目——AntFlow。这个项目不仅提供了一个灵活且可定制的工作流平台,还能让用户以可视化的方式创建和管理审批流程。如果你寻找一个快速集成审批流程的解决方案,那么AntFlow无疑是一个值得关注的项目!🚀

2024-12-16 06:25:40 1039

原创 深入探讨 HashMap 的几个隐藏宝藏方法:computeIfPresent 等

在 Java 开发中,HashMap 是一个非常常用的数据结构,用于存储键值对。尽管大多数开发者对 put、get 等基本方法非常熟悉,但在 HashMap 的 API 中,还隐藏着一些功能强大但使用频率较低的方法,比如 computeIfPresent、computeIfAbsent、merge 等。这些方法能够简化代码逻辑、提升开发效率。本文将深入解析这些方法的使用场景和技巧。

2024-11-28 08:22:38 510

原创 AntFlow 0.20.0版发布,增加多数据源多租户支持,进一步助力企业信息化,SAAS化

AntFlow经合作者在企业信息化办公领域经验,充分调研了国内办公特点,设计出了流程跳转,流程审批人去重,流程委托,流程限时委托,流程转办,流程转发,流程会签(多个人同时审批通过才能继续),流程或签(多人中一人办公即可继续),流程加批,流程变更处理人等功能。。。一应俱全。在探索了AntFlow的各项功能后,我深信这个项目将为企业的工作流管理带来巨大的便利。其可视化设计灵活配置和强大后端支持使其成为现代企业管理中不可或缺的工具。而且,作为一个完全开源的项目,它为开发者提供了丰富的学习和改进空间。

2024-11-28 08:14:11 1432

原创 Java 8 之后 Stream API 的新增功能及演进

Java 8 引入了 Stream API,这是 Java 语言的一次重大改进。它为开发者提供了一个强大的工具,用于处理集合数据流,简化了复杂数据操作。自 Java 8 起,Java 每个版本都对 Stream API 进行了增强和优化。Java 17 是一个长期支持版本(LTS),尽管其核心目标是稳定性,但仍对流的性能和易用性进行了优化。之后的版本更多是增强语言整体的性能,而非直接为 Stream API 添加显著的功能。Java 8 首次引入了 Stream API,为集合操作提供了声明式编程风格。

2024-11-22 07:55:33 844

原创 Java BigDecimal用法及避坑最佳实践

BigDecimal是 Java 中用于处理高精度浮点数运算的类,尤其在金融计算、科学计算等领域,精度变得尤为重要。与传统的double和float类型相比,BigDecimal提供了更高的精度和可靠性。BigDecimal是处理高精度计算的强有力工具,但在使用过程中需要注意上述提到的坑,以确保计算的准确性和可靠性。在需要高精度计算的场景下推荐使用BigDecimal,但要注意避免上述提到的坑,并权衡性能损失。

2024-11-19 20:59:53 966

原创 AntFlow集成variant form:低代码表单与流程引擎的完美结合

AntFlow 与 Variant Form 的结合,充分体现了低代码开发的潜力与价值。对于开发者,它减少了重复性工作,提升了开发效率;对于企业,它大幅降低了复杂业务流程的开发与维护成本。无论是简单的审批流程,还是复杂的动态表单交互,AntFlow 都能够轻松胜任。未来,AntFlow 将继续深挖低代码技术,为用户提供更强大的工具链。

2024-11-19 20:30:06 1245

原创 AntFlow快速集成到企业现有系统三之单模块项目源码集成篇

idea打开刚刚下载好的antflow源码,找到antflow-base模块,打开/src/main在磁盘所在位置,可以看到里面有两个文件夹分别是java和resources,将它们全选,然后复制,再进入到自己项目的/src/main磁盘目录,将刚复制的文件拷贝到此目录下.如果你看过了上一篇多模块目录复制,那一篇里面复制的是整个antflow-base模块,这里复制的是/src/main下面的源码,其它的内容不要复制.这是和多模块的一个差别。如果一切顺利,执行完以上步骤以后,你的项目就能正常跑起来了。

2024-11-17 16:02:09 974

原创 AntFlow快速集成到企业现有系统二之多模块项目源码集成篇

AntFlow是一款设计上类似钉钉/企业微信工作流,基于spring+mybatis+activiti+vue3等主流技术的低代码工作流平台。部署非常灵活,即可以做为独立的流程引擎中台部署(各系统通过三方接入形式接入流程中台服务),也可以做为一个工作流模块集成到现有的OA,CRM,CMS等系统中。独立部署非常简单,下载源码编译部署就可以了。本文着重讲解如何通过引用antflow-spring-boot-starter包来快速将AntFlow集成到企业现有系统中。通过源码集成方式将通过第二篇来介绍。

2024-11-17 15:56:25 1035

原创 AntFlow:一款高效灵活的开源工作流引擎

是一款功能强大、设计优雅的开源工作流引擎,其灵感来源于钉钉的工作流设计理念,旨在为企业和开发者提供灵活、高效的工作流解决方案。AntFlow 支持复杂的业务流程管理,具有高度可定制性,且拥有现代化的前端设计,能够快速集成到不同场景中。

2024-11-16 15:50:55 2566 2

原创 AntFlow快速集成到企业现有系统一之starter篇

AntFlow是一款设计上类似钉钉/企业微信工作流,基于spring+mybatis+activiti+vue3等主流技术的低代码工作流平台。部署非常灵活,即可以做为独立的流程引擎中台部署(各系统通过三方接入形式接入流程中台服务),也可以做为一个工作流模块集成到现有的OA,CRM,CMS等系统中。独立部署非常简单,下载源码编译部署就可以了。本文着重讲解如何通过引用antflow-spring-boot-starter包来快速将AntFlow集成到企业现有系统中。通过源码集成方式将通过第二篇来介绍。

2024-11-16 10:56:10 767

原创 AntFlow 0.11.0版发布,增加springboot starter模块,一款设计上借鉴钉钉工作流的免费企业级审批流平台

AntFlow经合作者在企业信息化办公领域经验,充分调研了国内办公特点,设计出了流程跳转,流程审批人去重,流程委托,流程限时委托,流程转办,流程转发,流程会签(多个人同时审批通过才能继续),流程或签(多人中一人办公即可继续),流程加批,流程变更处理人等功能。。。一应俱全。在探索了AntFlow的各项功能后,我深信这个项目将为企业的工作流管理带来巨大的便利。其可视化设计灵活配置和强大后端支持使其成为现代企业管理中不可或缺的工具。而且,作为一个完全开源的项目,它为开发者提供了丰富的学习和改进空间。

2024-11-15 09:50:22 1580

原创 解决 Spring Boot项目 CPU 尖刺问题

CPU 尖刺是 Spring Boot 应用程序的一个非常常见的症状。密集繁重的计算任务或需要大量处理能力的算法可能会导致 CPU 尖刺。确保您的算法已优化,并考虑在适用的情况下将工作负载分配到多个线程或进程中。低效代码: 低效或优化不佳的代码会导致 CPU 使用率增加。分析工具可以帮助识别代码中需要优化的热点。内存如果应用程序遇到与内存相关的问题,例如过多的垃圾收集或内存泄漏,则会导致 CPU 使用率增加。监控内存使用情况并使用分析工具可以帮助识别和解决这些问题。线程。

2024-11-08 11:16:06 904

原创 解决 Spring Boot 线程泄漏问题

当应用程序在执行完任务后无意中保留对线程对象的引用,或者线程未在适当条件下退出,从而阻止它们被垃圾回收时,就会发生线程泄漏。如果线程未正确终止或未正确处理终止条件,则线程在其任务完成后仍可能继续运行。使用线程池是有效管理线程的常见做法。但是,如果线程池管理不善,它可能会保留对不再需要的线程的引用。线程池管理不善可能包括在不再需要线程池时不关闭它。Java 中的 ThreadLocal 类允许将变量绑定到线程。如果使用不当且清理不当,可能会导致内存泄漏。

2024-11-07 08:27:56 1108

原创 Java SpringBoot –性能分析与调优

SpringBoot 是一种广泛使用的框架,用于构建基于 Java 的 Web 应用程序,在企业软件开发领域占有重要地位。它为大型微服务和独立应用程序提供支持。

2024-11-06 07:14:41 805

原创 AntFlow一款开源免费且自主可控的仿钉钉工作流引擎

AntFlow-Vue3是一个基于Vue3的工作流配置平台,模仿了钉钉的流程审批系统。它实现了可视化的流程拖拽配置,大大降低了审批流程设计的门槛。该项目后端使用Spring Boot和MyBatis等主流技术,并基于Activiti进行了深度定制,使得整体架构稳定且灵活。这个项目适合企业级应用,可以满足99.8%以上的审批流程需求。

2024-11-05 08:30:23 2856

原创 解决 Spring Boot项目 CPU 尖刺问题

CPU 尖刺是 Spring Boot 应用程序的一个非常常见的症状。密集繁重的计算任务或需要大量处理能力的算法可能会导致 CPU 尖刺。确保您的算法已优化,并考虑在适用的情况下将工作负载分配到多个线程或进程中。低效代码: 低效或优化不佳的代码会导致 CPU 使用率增加。分析工具可以帮助识别代码中需要优化的热点。内存如果应用程序遇到与内存相关的问题,例如过多的垃圾收集或内存泄漏,则会导致 CPU 使用率增加。监控内存使用情况并使用分析工具可以帮助识别和解决这些问题。线程。

2024-10-23 07:21:38 1544

原创 当java程序程序出现oom(OutOfMemoryError)时,我们该做什么

每个人都可能以历过由于**而导致应用程序失败的情况。发生此错误是因为应用程序无法分配所需的内存。这个问题的具体原因可能因严重程度和受影响的堆部分而异。但无论如何,我们希望为此做好一些准备。

2024-10-20 08:59:09 1083

原创 开源两个月,antflow后端项目全网获近100星

从六月初开源,转眼间AntFlow已经开源将近四个月了(前端比后端早了大约2个月,后端于8.18开源).(其实准备是重构以前开源版本.前年的时候我们已经将Vue2版的流程设计器开源了.后来由于疫情原因,没有再继续持续开发.)后来有一天再打开仓库的时候,发现虽然很久没有更新了,但是不断有用户点星(一共大约有20颗星,虽然对于一些明星项目不算什么,但是对我们来说确是很大的鼓励和支持.).还有一些用户提出issue,展示页打不开了,能否支持vue3…获得了214颗星星.后端项目,从开源到现在.前端项目。

2024-10-18 11:02:16 1169

原创 VM 线程概述:了解 Java 中的多线程

Java 中的线程是一个高级主题,许多开发人员都试图避免使用多线程代码。**多线程代码的编写、推理和调试通常更为复杂。**竞争条件和线程安全是不可容忍的,可能会产生难以调试的问题并带来严重后果。在本文中,我们将讨论一个简单应用程序中的线程。不过,我们只考虑 JVM 的默认线程。**我们不会探讨 Java 并发性或多线程方面的更高级主题。**

2024-10-12 08:14:04 723

原创 ConcurrentHashMap 中的并行性

我们重点介绍了 ConcurrentHashMap 中的并行性以及如何在应用程序中使用此功能。此外,我们还了解了启用此功能时 JVM 会发生什么情况。并行性是一项很酷的功能,可以在现代并发应用程序中很好地使用。

2024-10-04 06:40:49 680

原创 迎国庆,开源完全免费工作流引擎AntFlow 0.9最强版本发布,支持tidb,提升易用性and more...

AntFlow是一款前端仿钉钉的企业级工作流引擎。后端既可嵌入到现有业务系统,也可以做为独立的流程引擎中台部署(SAAS模式)。嵌入业务系统模式已经在笔者所在企业使用多年,功能丰富,能适多种国产办公场景;简单易用,上手快。只需要实现一个接口便可以快速开发出一个审批业务。增强SAAS化能力支持是我们的不断追求和一直在坚持做的。目前已经有一位企业级用户将AntFlow以SAAS模式使用到高校办公系统中。

2024-10-02 08:04:51 2215

原创 掌握 JVM 垃圾收集线程:简化 VM 选项

垃圾收集阶段对于任何 Java 应用程序都至关重要。主要目标是保持高吞吐量和低延迟之间的平衡。垃圾收集周期越短越好。因此,分配给垃圾收集器的资源越多,它的工作速度就越快,从而整体上改善我们的应用程序。在本文中,我们将了解线程数对应用程序性能的影响。本文主要介绍直接在主机上运行的应用程序。**但是,我们也可以将这些见解应用于容器化应用程序。**

2024-10-01 10:51:59 751

原创 大堆对象是如何影响程序的性能的

在本文中,我们将详细了解 JVM 如何存储对象及其在内存中的表示形式。此外,我们将深入探讨性能影响以及如何利用它们来获得优势。此外,我们将了解如何使用以及它如何影响应用程序的性能。此外,我们将了解UseCompressedOops*和堆大小之间的联系。

2024-09-29 09:32:43 996

原创 解决 Java 中由于 parallelStream 导致的死锁

并发性是软件开发的福音,也是祸根。通过并行处理提高性能的承诺与错综复杂的挑战相伴而生,例如臭名昭著的。死锁是多线程编程世界中的隐患,它甚至可以使最强大的应用程序陷入瘫痪。它描述了两个或多个线程永远被阻塞,相互等待的情况。在这篇博文中,我们深入探讨了现实世界中因使用 Java 的“”而引发的死锁事件。我们将剖析根本原因,仔细检查线程堆栈跟踪。

2024-09-28 05:32:51 855

原创 AntFlow国庆版(0.9.0)大版本重榜发布,对activiti底层源码动刀修改,增加重榜功能支持TIDB,为水平扩展提供无限可能,and more....

可能有些用户对TIDB不太了解,下面简单介绍一下TIDB以及引入TIDB支持以后对SAAS化带来的增益。TiDB 是 PingCAP 公司自主设计、研发的开源分布式关系型数据库,是一款同时支持在线事务处理与在线分析处理 (Hybrid Transactional and Analytical Processing, HTAP) 的融合型分布式数据库产品,具备水平扩容或者缩容、金融级高可用、实时 HTAP、云原生的分布式数据库、兼容 MySQL 协议和 MySQL 生态等重要特性,支持在本地和云上部署。

2024-09-27 15:37:28 1785

原创 助力企业信息化,开源免费工作流引擎AntFlow推出重榜功能tidb支持,为工作流引擎水平扩展提供无限可能

可能有些用户对TIDB不太了解,下面简单介绍一下TIDB以及引入TIDB支持以后对SAAS化带来的增益。TiDB 是 PingCAP 公司自主设计、研发的开源分布式关系型数据库,是一款同时支持在线事务处理与在线分析处理 (Hybrid Transactional and Analytical Processing, HTAP) 的融合型分布式数据库产品,具备水平扩容或者缩容、金融级高可用、实时 HTAP、云原生的分布式数据库、兼容 MySQL 协议和 MySQL 生态等重要特性,支持在本地和云上部署。

2024-09-27 07:51:55 1516

原创 Spring RestTemplate 升级 WebClient 导致 OutOfMemoryError

是 Java 企业应用程序的一个非常流行的框架。与内部或外部应用程序集成的一种常见方法是通过 HTTP REST 连接。我们正在从升级到基于 Java NIO 的,它可以通过允许在调用 REST 服务端点时进行并发来显著提高应用程序性能。虽然性能有所改善,但在并发连接数相同的情况下,WebClient 会因 OutOfMemoryError 而崩溃。我们将分析 WebClient 崩溃问题以及如何排除故障和修复这些问题。

2024-09-27 06:27:39 908

原创 AntFlow-Vue3 :一个仿钉钉流程审批,且满足99.8%以上审批流程需求的企业级工作流平台,开源且免费!

是一个基于Vue3的工作流配置平台,模仿了钉钉的流程审批系统。它实现了可视化的流程拖拽配置,大大降低了审批流程设计的门槛。该项目后端使用和MyBatis等主流技术,并基于Activiti进行了深度定制,使得整体架构稳定且灵活。这个项目适合企业级应用,可以满足99.8%以上的审批流程需求。•节点新增、删除、修改:用户可以随时对审批节点进行调整,以适应新的业务需求。•流程保存和发布:设计完成后,用户可以将流程保存并发布,使其生效。在探索了的各项功能后,我深信这个项目将为企业的工作流管理带来巨大的便利。其。

2024-09-26 06:38:35 4118

原创 优化java中 HashMap 的容量(capacity值)

它不是完美的最佳方法,但它不会强制重新散列。另一个好处是它很容易记住和理解。总体而言,每个应用程序都有其特定的问题和可能的优化。

2024-09-26 06:26:35 1007

原创 现代java,Java 8 到 Java 21特性一览

Java 是一种多功能编程语言,它经历了变革之旅。从 Java 8 开始,令人兴奋的功能改变了开发人员的编码方式。从用于更好功能的漂亮 lambda 表达式到使处理数据更容易的 Stream API,Java 8 改变了游戏规则。我们将查看 Java 21 之前的更新,其中密封类可让您更好地控制类,而记录使创建数据对象变得轻而易举。加入旅程,我将用简单的解释和实际示例分解这些现代 Java 功能。由于这将是一个漫长的旅程,而且文章会很长,我建议将其分成较小的部分以方便您阅读。

2024-09-25 07:08:33 1166

原创 Java 中的垃圾回收综合讲解

Java 垃圾收集综合指南Java 中的垃圾收集 (GC) 是 Java 虚拟机 (JVM) 通过删除应用程序中不再可访问的对象来自动回收内存的过程。这有助于防止内存泄漏并优化活动对象的可用内存,从而保持 Java 应用程序的性能和效率。

2024-09-24 06:04:49 1075

原创 盛夏已过,热情不止.开源近四个月AntFlow前后端获近三百颗星和首次捐赠.开源继续,近期将发布重榜功能

从六月初开源,转眼间AntFlow已经开源将近四个月了.(其实准备是重构以前开源版本.前年的时候我们已经将Vue2版的流程设计器开源了.后来由于疫情原因,没有再继续持续开发.)后来有一天再打开仓库的时候,发现虽然很久没有更新了,但是不断有用户点星(一共大约有20颗星,虽然对于一些明星项目不算什么,但是对我们来说确是很大的鼓励和支持.).还有一些用户提出issue,展示页打不开了,能否支持vue3…获得了53颗星星.(后端于8月18日正式开源).收获了两个企业级用户,获得了214颗星星.后端项目,

2024-09-23 07:40:32 1913

原创 spring boot中虚拟线程性能探讨

Spring Boot 已成为 Java 生态系统中事实上的框架。在这篇文章中,让我们讨论如何在 Spring Boot 应用程序中配置虚拟线程,并研究和比较其与本机线程的性能特征。此 Spring Boot 应用程序将使用 REST 端点计算大于或等于 10000 的常数的斐波那契和。借助 JMeter,我们将模拟 30 分钟内 1000 个用户的负载,并了解其吞吐量和偏差。我们将针对本机线程和虚拟线程执行此实验,并分析这些操作的线程转储和 GC 日志分析。让我们开发一个小代码来计算 10000 的斐波那

2024-09-23 06:50:40 821

原创 理解JVM中的死锁:原因及解决方案

这样,我们可以确保每个线程以相同的顺序获取锁。引入对象排序的一种方法是利用它们的hashCode值。此外,

2024-09-22 14:40:40 1249

原创 理解JAVA中的Native内存追踪(NMT)机制

堆内存(年轻代、老一代)元空间线程代码缓存直接缓冲GCJNINMT其它如果您有兴趣的话呢,可以观看此视频片段来了解有关这些JVM 内部内存区域的更多信息。NMT 是 Java 虚拟机 (JVM) 的一项功能,可跟踪和报告所有 JVM 内存区域的使用情况。当前分配的内存大小是多少?当前使用的内存大小是多少?其他信息(例如活动加载类数、线程数)

2024-09-21 08:40:32 931

原创 AntFlow系列教程之流程拒绝

这是开源项目AntFlow的一个系统入门使用教程.AntFlow是一款开源免费的企业级低代码工作流引擎.仿照钉钉设计,极大降低流程设计、开发和维护成本。流程拒绝和流程同意提交的参数是一样的,只是引擎对流程的处理结果不同.对于审批人来说只是点的按钮不同。

2024-09-20 07:07:29 550

原创 AntFlow 0.8.9重榜更新,完善外部流程接入,全力支持saas系统!

AntFlow是一款采用Springboot+Mybatis+activiti+ruoyi+vue3等主流前后端技术开发的仿钉钉工作流引擎,结合中国式办公特点深度定制,可以作为钉钉工作流的开源替代。致力解决传统activiti/flowable流程图必须由专业程序员绘制,学习曲线陡峭,上手难、排查问题难、维护成本高等问题。

2024-09-19 08:59:17 1377

原创 AntFlow系列教程二之流程同意

打开演示页,切到第二个tab待审批,就可以看到我的审批任务列表了,如下图里面有个审批按钮,点击即可进入到审批页面了,然后点同意按钮,按下F12即可看到流程同意时的请求参数了。由于AntFlow 引擎本身不与用户和组织系统关联。演示页面也没有登陆信息,做了一个简单的审批人Id搜索框,就可以切换不同审批人查看他的待办任务了。可能有的同学会困惑如何获取到一些审批任务的审批人呢?请在演示页上面tab上点击更多,里面有个发起测试按钮,审批流配置下拉框选择第三方账号申请。

2024-09-18 19:38:31 906

原创 你的 Java 对象占用了多少内存

对齐应该是 2 的幂,并且在 64 位架构上不能超过 4 个字节。

2024-09-13 05:53:10 870

hands on postgresql电子书

hands on postgresql电子书,文字版,内容来自网络,如有侵权请联系删除

2024-08-25

空空如也

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

TA关注的人

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