JavaFx学习笔记

最初,笔者在工作中需要为客户开发一个Excel批量数据处理工具,虽然实现的方式有很多(C#、Electron、Python...),但笔者平常用Java多一些,还是想用Java实现,毕竟熟悉的语言开发起来更顺手。在查阅了相关资料后,对JavaFx产生了浓厚的兴趣(感觉AWT、Swing界面太丑),然后开始学习JavaFx,并开发了第一个工具。

了解JavaFx

看了很多JavaFx相关的教程资料、对JavaFx发展展望的探讨。相对于JS大前端时代,JavaFx确实是生不逢时。不过这丝毫不影响我对JavaFx的兴趣,开发依然很顺手 。

  • JavaFx 中文文档资料
  • JavaFX 及 Java 客户端技术的未来
  • JavaFX11出来了Java的GUI有希望吗?

开发环境

  • 开发工具:idea 对JavaFx支持友好,内嵌XML SceneBuilder视图,XML与Java Controller组件映射、创建、跳转
  • 可视化窗体布局器:Scene Builder Oracle官网提供下载2.0版本,Gluon官网有针对jdk8或更高版本的Scene Builder

学习心得

用JavaFx开发了多个小工具之后,整理出来了两个项目骨架,用于快速开始一个JavaFx应用。

第一个与SpringBoot整合,因为笔者一直在用SpringBoot开发Web项目,接触JavaFx后就在想,如果给JavaFx用上SpringBoot各种Starter的加持,JavaFx客户端岂不是更好用了(操作数据库、消息队列...)

  • JavaFx + SpringBoot 版本 https://gitee.com/westinyang/javafx-boot
  • JavaFx Only 版本 https://gitee.com/westinyang/javafx-start
  • JDK11+ & JavaFX15 https://gitee.com/westinyang/javafx-jdk11-start 推荐
    • 使用 jlink 打包为精简版jvm,7z压缩后约16m左右
    • 使用 GraalVM native-image 静态编译不依赖jvm,7z压缩后13m左右

扩展组件

一些常用的第三方组件、主题、图标...

  • 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插件

你可能感兴趣的:(JavaFx学习笔记)