画图组件jgraphx项目整体介绍(一)

工作中有许多的流程类的业务需求,往往需要使用前端的一些组件进行绘制,它们可以是基于svg、canvas之类的技术构建,即可以在网页中展示又可以编辑,不过既然是前端技术它们必须要依赖于浏览器或其它之类的显示介质进行展示,无法通过某些服务端的程序直接生成可展示的图形化(通俗点就是跳过浏览器),加之前端的这些框架(如:bpmn-js)上手应该不会太难吧,所以虽然还会但我也不想深入研究,一是工作中未需要使用,二是兴趣不在此,但是对于后端语言的实现我却不能容忍我不会,所以就稍微摸索了一些,把相关的实践整理出来。 1.基本介绍 为什么不能容忍自己后端语言上的不会呢,是因为有一些业务场景上只能从后端实现,比如一些定时任务执行的程序,需要生成一些流程类的图形,此时与浏览器运行的程序没有关系;再比如需要导出至PDF、Word、Excel等一些文件中展示时;再有就是发送邮件类的程序,若将流程图形直接作为附件或...

文章分类:经验分享 技术知识

Java画流程图

Java SQL 格式化实践

前一篇《Java SQL 格式化实践》介绍了 JSqlParser 项目解析SQL的实践,本篇介绍一下Java中格式化SQL语句的实现,类似这种的技术技能我个人还是比较喜欢的,所以就有了这篇。 JSQLFormatter是一个开源的Java库,用于格式化和美化SQL语句。它可以将复杂的SQL语句转换为易读且格式良好的形式,提高代码的可读性和可维护性。项目地址为:“https://github.com/manticore-projects/jsqlformatter”,在它的介绍信息里有一些在线示例和官网的更详细的介绍,有兴趣可以自行查看。 1.特征 (1)SQL语句美化:JSQLFormatter可以对SQL语句进行自动缩进、换行和对齐,使其更易读。 (2)支持多种SQL方言:JSQLFormatter支持多种常见的SQL方言,包括MySQL、Oracle、SQL Server等,可以正确...

文章分类:经验分享 技术知识

SqlParser

Java SQL 解析器实践

最近在刚好写了一个批量执行多个SQL脚本需求,脚本中的各个语句可以是各式各样的(可以是DDL,也可以是DML等),若是建立在比较简单约定的需求上直接使用JDBC的PreparedStatement对象中执行execute函数完活,它可以一次性执行多个“;”分割的脚本,执行完活拉到,不需要考虑使用分号分割的多个脚本执行的结果,但是这始终不是一个专业技术人员应该体现的水平。若是使用split拆分分号(或是正则分割分号或回车符)则显得非常鸡肋,会被诟病倒是小事儿,对脚本执行的结果不可控则显得问题更加严重。 1.关于JSqlParser 所以前面一篇《Java获取SQL语句中的表名》的文章中,使用到的组件“sql-table-name-parser”介绍中也提及到了本文的主角《JSqlParser》,接着实践它可以拆分多个SQL脚本的特性来介绍一下我对它的了解,认识它也就才一两天,在它身上花的时间...

文章分类:经验分享 技术知识

SqlParser

Java获取SQL语句中的表名

前面在使用MyBatis Plus实现的动态schema时《MyBatis Plus应用(五)schema的优雅实现》,当时觉得还是非常优雅的,后来经过旁边的小伙伴介绍又有一种使用拦截器的方式来全局实现动态schema,更加的优雅,于是在略微了解一些实现后发现他是使用Mybatis Plus中的工具类来获取SQL语句中的表名来进行替换,比如在Mapper中的SQL中,所有的用户对象(不限于表、试图、同义词之类的对象)均按实际名称书写,待获取到表名后进行动态替换即可。 1.简单介绍 废话不多说,有兴趣可以去MyBatis Plus的源码中查看,它的内部集成了SQL表名称解析器插件《sql-table-name-parser》,项目地址为:https://github.com/mnadeem/sql-table-name-parser。在此之前也曾经想过此类的需求,在一个SQL语句中获取所有的...

文章分类:经验分享 技术知识

SqlParser
封面图片

Apache Commons-Imaging 项目入门实践

本人常对于Apache Commons的公共项目进行关注,也曾经对多个项目的应用进行了实践,本次分享一下对Apache Commons-Imaging项目的实践,也就只是了解了几个小时,粗浅的进行掌握而已。 1.基本介绍 Apache Commons Imaging,以前称为 Apache Commons Sanselan,是一个读取和写入各种图像格式的库,包括快速解析图像信息(大小、颜色空间、ICC 配置文件等)和元数据。这个库是纯Java的。与本机代码中的典型图像 I/O 库相比,它更可移植,并且应该更可靠且更安全,可以防止损坏/恶意图像,但仍然表现得相当好。它比ImageIO/JAI/java.awt.Toolkit(Sun/Java的图像支持)更容易使用,支持更多格式(并且支持更正确)。它还提供对元数据的轻松访问。 甚至在作为 Apache Commons 组件首次发布之前,成像功...

文章分类:经验分享 技术知识

Java 比对两张图片的差异

1.基本介绍 Github上的“https://github.com/akullpp/awesome-java”页整理了非常多的各类Java组件的实现,前面一篇从它的图片处理篇找到了《image-comparison》进行了动手实践,关于图片处理的二维码组件《ZXing》本站曾有实践;关于图片识别的组件《Tess4J》页略有实践;关于图片操作(放大、缩小、旋转、水印等)的《Thumbnailator》组件也略有实践,所以在看到了《image-comparison》这个时觉得挺有意思的,专门拿过来实践了一下,它可以比较 2 个相同大小的图像(图片大小必须一致),并通过绘制矩形直观地显示差异,图像的某些部分可以从比较中排除,可用于自动化质量保证测试,项目的官方地址为“https://github.com/romankh3/image-comparison”,更多描述和项目介绍可转至这里查看。 ...

文章分类:经验分享 技术知识

封面图片

DBF文件的解析介绍

1.基本介绍 DBF是Digital Beam Forming的缩写,“.dbf”文件扩展名代表据库处理系统所产生的数据库文件,起初意为保存数据的文件是一个简单的表,可以使用ASCII字符集添加、修改、删除或打印数据,随着产品变得越来越流行,底层文件类型 .dbf 得到扩展,并添加了其他文件以增强数据库系统的功能。所以DBF是一个非常小型的数据库文件,它支持的文本类型的长度也非常短,不超过256个长度。 2.JavaDBF介绍 JavaDBF 是一个用于读写 XBase 文件的 Java 库。有很多遗留应用程序都以 .dbf 作为主要存储格式。JavaDBF 最初是为此类应用程序的数据传输而编写的。直到 90 年代末,dBase 及其同类产品仍然是中小型企业应用程序最喜欢的数据库平台。它们需要较低的硬件配置并且开发成本较低。最终,功能更强大的桌面数据库(例如 Microsoft Acces...

文章分类:经验分享 技术知识

Redis实践(8)Redisson 简单实践

Redisson真是的非常的高大上(深奥),除了对Redis有一些了解之外,对分布式也要有深刻理解,而且想要使用起来毫不费力还必须对Java有深厚的功底,特别是对JUC要有一定的掌握,本次也是兴趣所及花了一些业余时间来略挖一二,主要也是随着个人掌握技能的程度和兴趣所及,进行了简单的几个示例,详细如下。 1.集群节点 /** *测试redis的基本信息 * *@authorchendd *@date2023/5/2122:30 */ publicclassRedisContextBasicTestextendsBaseTest{ @Resource privateRedissonredisson; @Test publicvoidcontextRedissonConfig(){ Configconfig=this.redisson.getConfig(); List<String>nod...

文章分类:经验分享 技术知识

Redis

Redis实践(7)Redisson 简单介绍

1.基本介绍 前文已经挣扎着折腾了许多的Redis相关技术知识了,也耗费了我巨多的业余时间,终于来到redisson的介绍了,计划随便写写让我的Redis实践之旅画个句号吧,毕竟惰性还是有很大的,懒得再深研了,后续有机会继续深挖 据我所知在Java连接redis的客户端框架有三款,分别是Jedis、Lettuce、Redisson,Jedis在SpringBoot 2.x已经不推荐使用了,所以再在哪里看到关于使用Jedis连接的代码时可快速跳过,推荐使用异步非阻塞的Lettuce框架,后者性能效率更优,Jedis和Lettuce主要是为了操作redis的Api框架,而redisson则明显是更加高级的玩法,它的重点并不在于对redis的提供基本操作,而是以redis为基础服务,在Java实用工具包中常用接口的基础上,为使用者提供了一系列具有分布式特性的常用工具类和组件,使得原本作为协调单机...

文章分类:经验分享 技术知识

Redis

Redis实践(6)SpringBoot Data Redis Cluster架构集成

前文中使用3台服务器的6个Redis节点来搭建了一套Cluster模式的集群架构,本篇主要来使用SpringBoot Data Redis项目环境来项目集成它,还是那句话只有以SpringBoot项目环境集成后的东西才是雷打不动应该追而求之的,详见下文。 1.maven坐标 与前文中的SpringBoot Data Redis项目集成主从架构的Redis一致,maven坐标完全一致,此处就不再贴出了。 2.application.yml server: port:8080 servlet: context-path:/ spring: redis: database:1 password:chendd connect-timeout:5s#连接超时时间 timeout:5s#读取超时时间 lettuce: pool: enabled:true max-active:16#最大连接数据库连...

文章分类:经验分享 技术知识

Redis
本站信息

 运营时间: 天

 用户数量: 人

 文章数量: 篇

 评论数量: 条

 点赞个数: 个

 最后更新:

标签云