最初,笔者在工作中需要为客户开发一个Excel批量数据处理工具,虽然实现的方式有很多(C#、Electron、Python...),但笔者平常用Java多一些,还是想用Java实现,毕竟熟悉的语言开发起来更顺手。在查阅了相关资料后,对JavaFx产生了浓厚的兴趣(感觉AWT、Swing界面太丑),然后开始学习JavaFx,并开发了第一个工具。
了解JavaFx
看了很多JavaFx相关的教程资料、对JavaFx发展展望的探讨。相对于JS大前端时代,JavaFx确实是生不逢时。不过这丝毫不影响我对JavaFx的兴趣,开发依然很顺手 。
开发环境
- 开发工具:idea
对JavaFx支持友好,内嵌XML SceneBuilder视图,XML与Java Controller组件映射、创建、跳转
- 可视化窗体布局器:Scene Builder
Oracle官网提供下载2.0版本,Gluon官网有针对jdk8或更高版本的Scene Builder
学习心得
用JavaFx开发了多个小工具之后,整理出来了两个项目骨架,用于快速开始一个JavaFx应用。
- JavaFx + SpringBoot 版本 https://gitee.com/westinyang/javafx-boot
- JavaFx Only 版本 https://gitee.com/westinyang/javafx-start
第一个与SpringBoot整合,因为笔者一直在用SpringBoot开发Web项目,接触JavaFx后就在想,如果给JavaFx用上SpringBoot各种Starter的加持,JavaFx客户端岂不是更好用了(操作数据库、消息队列...)
扩展组件
一些常用的第三方组件、主题、图标...
-
controlsfx
提供高质量的UI控件和其他工具,以补充核心JavaFX发行版
-
JFoenix
JavaFX Material Design 样式库
-
jmetro
Fluent Design 样式库
Metro 样式库
-
bootstrapfx
bootstrap javafx 移植版
-
fontawesomefx
FontAwesome 字体图标
-
RichTextFX
JavaFx 富文本编辑器
-
AwesomeJavaFX
精选的JavaFX库,书籍,框架等
继续探索
- JxBrowser
Java开发的chromium内核控件
嵌入JavaFx/Swing
- Gluon mobile
支持使用JavaFx开发跨平台应用(android、ios、嵌入式)
-
jpro
jpro是一项新技术,它将Java重新带回浏览器,无需Java插件
网友评论