如何创建一个新的javafx(基于JavaFx搭建的实用小工具集合xJavaFxTool)
xJavaFxTool是使用javaFx开发的实用小工具集,利用业余时间把工作中遇到的一些问题总结起来,打包进小工具集中,供大家参考和使用,里面包含了JavaFx的一些功能的示例,如布局、国际化、第三方UI库(controlsfx、JFoenix等)、外部jar包加载(插件机制)等一些常用功能支持插件开发,将插件jar包放至根目录libs下即可自动加载(插件开发示例见开源项目xJavaFxPlugIn,后续准备将小工具拆分至各插件中按需加载,目前插件功能暂不完善,后续将各功能拆分至各模块按需加载,减小jar包的大小);
环境搭建说明:
- 开发环境为jdk1.8,基于maven构建
- 使用eclipase或Intellij Idea开发(推荐使用Intellij Idea)
- 本项目使用了lombok,在查看本项目时如果您没有下载lombok 插件,请先安装,不然找不到get/set等方法
- 依赖的xcore包已上传至git托管的maven平台,git托管maven可参考教程(若无法下载请拉取项目自行编译)。教程地址:点击进入
- 使用javafx-maven-plugin插件进行打包操作(可打包windows、Linux、Mac安装包)
- 使用exe4j将jar包转成exe执行文件(仅供参考,可使用其它程序打包)
- 使用InnoSetup可进行制作windows安装包
目前集成的小工具有:
- FileCopy:文件复制(支持自动调度拷贝功能)(使用quartz工具)
- CronExpBuilder:Cron表达式生成器
- CharacterConverter:编码转换
- EncryptAndDecrypt:加密解密(Ascii、Hex、Base64、Base32、URL、MD5、SHA、AES、DES、文件加密DM5、文件加密SHA1、摩斯密码、Druid加密)(使用commons-codec工具)
- TimeTool:Time转换(常用格式转换(含时区)、计算时间差、时间叠加计算)
- LinuxPathToWindowsPath:路径转换(使用oshi工具)
- QRCodeBuilder:二维码生成工具(自动生成、加入logo、截图识别、自定义格式)(使用google.zxing、jkeymaster等工具)
- IdCardGenerator:IdCard生成器
- RegexTester:正则表达式生成工具
- ShortURL:网址缩短(目前支持百度、新浪、缩我等短网址缩短)
- EscapeCharacter:转义字符(支持Html、XML、Java、JavaScript、csv、Sql)(使用commons-lang3工具)
- ZHConverter:字符串转换(使用hanlp开源工具,实现拼音、简体-繁体、简体-臺灣正體、简体-香港繁體、繁體-臺灣正體、繁體-香港繁體、香港繁體-臺灣正體、数字金额-大写金额等直接的转换)
- ActiveMqTool:Mq调试工具(目前仅支持ActiveMq)
- HttpTool:Http调试工具(支持自定义发送数据、header和cookie)(使用okhttp)
- JsonEditor:json格式化编辑工具
- IconTool:图标生成工具(使用thumbnailator工具)
- RedisTool:Redis连接工具(使用jedis工具)
- WebSourcesTool:网页源码下载工具
- SwitchHostsTool:切换Hosts工具(使用richtextfx工具)
- FtpServer:Ftp服务器(快速搭建本地Ftp服务)(基于apache.ftpserver)
- CmdTool:Cmd调试工具
- FtpClientTool:Ftp(s)/Sftp客户端调试工具(批量上传、下载、删除文件及文件夹)(implicit/explicit SSL/TLS)(使用jsch、commons-io等工具)
- PdfConvertTool:Pdf转换工具(目前仅支持pdf转图片、pdf转text功能)(使用pdfbox工具)
- DirectoryTreeTool:文件列表生成器
- ImageTool:图片压缩工具(批量压缩、修改尺寸、转换格式)
- AsciiPicTool:图片转码工具(包括图片生成banner码、图片转Base64码、图片转Excel表)
- KafkaTool:Kafka调试工具(未完善)(使用了kafka-clients)
- EmailTool:Email群发工具(支持自定义群发模版)(使用commons-email工具)
- ColorCodeConverterTool:颜色代码转换工具(包括16进制、RGB、ARGB、RGBA、HSL、HSV等代码之间转换)
- SmsTool:短信群发工具(目前支持中国移动、中国电信、腾讯云、阿里云、梦网云通讯等平台)
- ScriptEngineTool:脚本引擎调试工具(目前支持JavaScript、Groovy、Python、Lua等脚本)(使用groovy、jython、luaj等工具)
- FileRenameTool:文件重命名工具
- JsonConvertTool:Json转换工具(目前支持Json转Xml、Json转Java实体类、Json转C#实体类、Json转Excel、Json转Yaml、Properties转Yaml、Yaml转Properties)(使用fastjson、snakeyaml、dom4j等工具)
- WechatJumpGameTool:微信跳一跳助手
- TextToSpeechTool:语音转换工具(调用百度语音转换api)
- 2048:小游戏2048
- SocketTool:Socket调试工具(使用Apache Mina实现Tcp、Udp服务端和Client端)
- ImageAnalysisTool:图片解析工具(1、.atlas文件反解析2、图片快速拆分工具)
- DecompilerWxApkgTool:微信小程序反编译工具(一键反编译微信小程序包)
- zookeeperTool:Zookeeper工具(方便对zookeeper的一系列操作,包括新增、修改、删除(包括子文件)、重命名、复制、添加变更通知)(使用zkclient工具)
- ExcelSplitTool:Excel拆分工具(支持对xls、xlsx、csv及文件进行拆分操作)(使用commons-csv工具)
- PathWatchTool:文件夹监控工具
- CharsetDetectTool:文件编码检测工具(使用juniversalchardet工具)
- TransferTool:传输工具(集成各种传输协议,使用自定义定时任务(简单模式、cron表达式模式),分为Receiver接收器、Filter处理器、Sender发送器)
- ScanPortTool:端口扫描工具
- FileMergeTool:文件合并工具(支持对xls、xlsx、csv及文件进行合并操作)(使用apache.poi工具)
- SedentaryReminderTool:久坐提醒工具
- RandomGeneratorTool:随机数生成工具(使用hutool工具)
- ClipboardHistoryTool:剪贴板历史工具
- FileSearchTool:文件搜索工具(使用lucene搜索引擎)
- Mp3ConvertTool:Mp3转换工具(目前支持网易云音乐.ncm、QQ音乐.qmc转换为mp3格式)(使用jaudiotagger工具)
- SealBuilderTool:印章生成工具
- BullsAndCowsGame:猜数字小游戏
传输工具目前支持功能如下:
Receiver接收器:
标题 配置类名 说明 Fs ReceiverConfigFs 从磁盘文件中读取消息 Ftp ReceiverConfigFtp 使用Ftp/Ftps协议中接收消息 Http ReceiverConfigHttp 使用http/https协议接收消息(支持拉取模式和提供Restfull接口方式) Ftp ReceiverConfigFtp 使用Ftp/Ftps协议接收消息 SFtp ReceiverConfigSftp 使用SFtp协议接收消息 Email ReceiverConfigEmail 使用Email协议接收消息 Jms ReceiverConfigJms 使用Jms协议接收消息 Kafka ReceiverConfigKafka 使用Kafka协议接收消息 IbmMq ReceiverConfigIbmMq 使用IbmMq协议接收消息 RabbitMq ReceiverConfigRabbitMq 使用RabbitMq协议接收消息 RocketMq ReceiverConfigRocketMq 使用RocketMq协议接收消息 ActiveMq ReceiverConfigActiveMq 使用ActiveMq协议接收消息 Hdfs ReceiverConfigHdfs 使用HDFS协议接收消息 Filter处理器:
标题 配置类名 说明 Backup FilterConfigBackup 将消息备份到文件系统中 Compress FilterConfigCompress 将消息进行压缩操作 Decompress FilterConfigDecompress 将消息进行解压操作 EncryptDecrypt FilterConfigEncryptDecrypt 将消息进行加密解密操作 OracleSqlldr FilterConfigOracleSqlldr 将消息存入Oracle数据库 GroovyScript FilterConfigGroovyScript 将执行Groovy脚本 PythonScript FilterConfigPythonScript 将执行Python脚本 JavaScript FilterConfigJavaScript 将执行JavaScript脚本 LuaScript FilterConfigLuaScript 将执行Lua脚本 Sender发送器:
标题 配置类名 说明 Fs SenderConfigFs 从磁盘文件中读取消息 Ftp SenderConfigFtp 使用Ftp/Ftps协议中发送消息 Http SenderConfigHttp 使用http/https协议发送消息 Ftp SenderConfigFtp 使用Ftp/Ftps协议发送消息 SFtp SenderConfigSftp 使用SFtp协议发送消息 Email SenderConfigEmail 使用Email中发送消息 Jms SenderConfigJms 使用Jms协议发送消息 Kafka SenderConfigKafka 使用Kafka协议发送消息 IbmMq SenderConfigIbmMq 使用IbmMq协议发送消息 RabbitMq SenderConfigRabbitMq 使用RabbitMq协议发送消息 RocketMq SenderConfigRocketMq 使用RocketMq协议发送消息 ActiveMq SenderConfigActiveMq 使用ActiveMq协议发送消息 Hdfs SenderConfigHdfs 使用HDFS协议发送消息 项目开发中,以后会陆续添加新工具,欢迎大家参与其中,多提提意见,谢谢。
项目截图如下:
免责声明:本文仅代表文章作者的个人观点,与本站无关。其原创性、真实性以及文中陈述文字和内容未经本站证实,对本文以及其中全部或者部分内容文字的真实性、完整性和原创性本站不作任何保证或承诺,请读者仅作参考,并自行核实相关内容。文章投诉邮箱:anhduc.ph@yahoo.com