资料摘抄与引用来源
第一部分:基础信息概览
1. JavaFx是什么
JavaFx是一个强大的图形和多媒体处理工具集合,它允许开发者来设计,创建,调试和部署富客户端程序,并且和Java一样跨平台
2. JavaFx应用程序概览
由于JavaFX库被写成了Java API,因此JavaFX应用程序代码可以调用各种Java库中的API。例如JavaFX应用程序可以使用Java API库来访问本地系统功能并且连接到基于服务器中间件的应用程序。
JavaFX可以自定义程序外观。层级样式表(CSS)将外观和样式与业务逻辑实现进行了分离,因此开发人员可以专注于编码工作。图形设计师使用CSS来方便地定制程序的外观和样式。
如果你具有Web设计背景,或者你希望分离用户界面(UI)和后端逻辑,那么你可以通过FXML脚本语言来表述图形界面并且使用Java代码来表述业务逻辑。如果你希望通过非编码的方式来设计UI,则可以使用JavaFX Scene Builder。在你进行UI设计时,Scene Builder会创建FXML标记,它可以与一个集成开发环境(IDE)对接,这样开发人员可以向其中添加业务逻辑。
3. JavaFx8及以后版本新特性(本人使用的部分)
● Java API:
JavaFX是一个Java库,包括用Java写成的类和接口。其API对基于JVM的语言也是友好的,例如JRuby和Scala。
● FXML和Scene Builder:
FXML是一种基于XML的声明式标记语言,用于描述JavaFX应用程序的用户界面。设计师可以在FXML中编码或者使用JavaFX Scene Builder来交互式地设计图形用户接口(GUI)。Scene Builder所生成的FXML标记可以与IDE对接,这样开发者可以添加业务逻辑。
● WebView:
它是一个使用了WebKitHTML技术的Web组件,可用于在JavaFX应用程序中嵌入Web页面。在WebView中运行的JavaScript可以方便地调用JavaAPI,并且JavaAPI也可以调用WebView中的JavaScript。对附加的HTML5特性的支持,包括Web Socket、Web Worker、Web Font、打印功能等都被添加到了JavaFX8中。参考《增加HTML内容到JavaFX应用程序中(Adding HTML Content to JavaFX Applications)》章节来了解更多信息。
● 与Swing互操作:
现有的Swing程序可以通过JavaFX的新特性升级,例如多媒体播放和Web 内容嵌入。在JavaFX8中加入了SwingNode类,它可以将Swing内容嵌入到JavaFX程序中。参考SwingNode API Javadoc和《在JavaFX应用程序中嵌入Swing 内容(Embedding Swing Content in JavaFX Applications)》章节来了解更多信息。
● 内置的UI控件和CSS:
JavaFX提供了开发一个全功能应用程序所需的所有主要控件。这些组件可以使用标准的Web技术如CSS来进行装饰。在JavaFX8中,DatePicker和TreeView UI控件是可用的,并且可以使用标准的Web技术如CSS来进行美化。参考《使用JavaFX UI控件(Using JavaFX UI Controls)》章节来了解更多信息。另外CSS样式控制类都变成了公开API,它们可以使用CSS来为对象增加样式。
● 自包含的应用部署模型:
自包含应用包具有应用所需的所有资源、包括一个Java和JavaFX运行时的私有拷贝。它们可作为操作系统原生安装包发布,并提供与原生应用相同的安装和运行体验。
4. JavaFX可以构建什么
使用JavaFX你可以构建各种类型的应用程序。一般来说,它们是联网应用,可以跨平台部署,并且可以在一个具有高性能现代UI中展现信息,支持音频、视频、动画等特性。
第二部分:工具环境与打包部署配置
5. Spring Boot集成JavaFx的maven配置
Spring Boot与JavaFx8匹配使用的库:spring-boot-javafx-support
集成spring-boot-javafx-support的Maven配置
<dependencies>
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter</artifactId>
</dependency>
<dependency>
<groupId>de.roskenet</groupId>
<artifactId>springboot-javafx-support</artifactId>
<version>2.1.6</version>
</dependency>
<dependency>
<groupId>de.roskenet</groupId>
<artifactId>springboot-javafx-test</artifactId>
<version>1.3.0</version>
<scope>test</scope>
</dependency>
</dependencies>
<build>
<plugins>
<plugin>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-maven-plugin</artifactId>
&l

最低0.47元/天 解锁文章
1037

被折叠的 条评论
为什么被折叠?



