Spring Boot + JavaFX 应用示例教程

Spring Boot + JavaFX 应用示例教程

springboot-javafx-app-demospringboot+Javafx 桌面应用项目地址:https://gitcode.com/gh_mirrors/sp/springboot-javafx-app-demo

1. 项目目录结构及介绍

springboot-javafx-app-demo项目中,主要的目录结构如下:

.
├── pom.xml       // Maven构建文件,定义了项目依赖和插件
├── src
│   ├── main
│   │   ├── java      // 主代码源目录,包含JavaFX和Spring Boot应用类
│   │   └── resources  // 资源文件目录,例如配置文件
│   └── test        // 测试代码源目录
└── target         // 构建结果输出目录,包含编译后的class文件、jar包等
    └── jfx          // JavaFX打包的特定目录
        └── native     // 包含可执行的JavaFX应用
            └── ...    // 应用的JAR和相关资源
  • pom.xml: 项目的Maven配置文件,包含了所有必要的依赖和插件,例如Spring Boot和JavaFX相关的依赖。
  • src/main/java: 存放应用程序的主要代码,包括Spring Boot的启动类和JavaFX的视图控制器。
  • src/main/resources: 放置应用的配置文件和其他资源文件。
  • src/test: 存放单元测试代码。
  • target/jfx/native: 在项目构建后,这里会生成可执行的JavaFX应用。

2. 项目的启动文件介绍

项目的启动文件是src/main/java/com/pdai/javafx/app/SpringFxAppApplication.java。这是一个继承自SpringApplication的JavaFX主类,它负责初始化Spring Boot应用并展示JavaFX的UI界面。示例中的启动方法通常类似这样:

@SpringBootApplication
public class SpringFxAppApplication extends Application {

    public static void main(String[] args) {
        launch(args);
    }

    @Override
    public void start(Stage primaryStage) throws Exception {
        Parent root = FXMLLoader.load(getClass().getResource("application.fxml"));
        primaryStage.setScene(new Scene(root));
        primaryStage.show();
    }
}

这里的launch(args)方法启动JavaFX应用,而start()方法则设置了应用程序窗口的主要内容,从application.fxml文件加载UI组件。

3. 项目的配置文件介绍

src/main/resources目录下的配置文件主要影响Spring Boot应用的行为。默认情况下,application.propertiesapplication.yml是最常见的配置文件,它们可以设置应用的环境变量,数据库连接,服务器端口等。例如,在application.properties中,你可以看到类似以下的配置:

server.port=8080
spring.datasource.url=jdbc:mysql://localhost:3306/mydb
spring.datasource.username=myuser
spring.datasource.password=mypassword

这些配置告诉Spring Boot应用监听的HTTP端口以及数据库连接的信息。此外,还可以通过配置其他属性来自定义应用的行为。


以上就是关于springboot-javafx-app-demo项目的目录结构、启动文件和配置文件的基本介绍。要运行该项目,确保已安装Maven和JDK,然后在项目根目录下执行mvn clean package,随后可以在target/jfx/native目录找到可执行的JavaFX应用进行运行。

springboot-javafx-app-demospringboot+Javafx 桌面应用项目地址:https://gitcode.com/gh_mirrors/sp/springboot-javafx-app-demo

  • 3
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
Spring Boot中与JavaFX通信,可以使用Spring Boot的WebSocket功能。WebSocket是一种双向通信协议,允许在浏览器和服务器之间进行实时通信。JavaFX可以通过WebSocket与后端进行通信,并接收来自后端的数据。 首先,您需要在Spring Boot中添加WebSocket的依赖。您可以在pom.xml文件中添加以下代码: ``` <dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-websocket</artifactId> </dependency> ``` 接下来,您需要创建一个WebSocket处理程序类,该类用于处理来自JavaFX的WebSocket请求。您可以创建一个类,如下所示: ``` @Component public class WebSocketHandler extends TextWebSocketHandler { @Override public void handleTextMessage(WebSocketSession session, TextMessage message) throws IOException { // 处理接收到的消息 String payload = message.getPayload(); // 将消息发送给JavaFX客户端 // ... } } ``` 然后,您需要在Spring Boot中配置WebSocket。您可以在应用程序类中添加以下代码: ``` @Configuration @EnableWebSocket public class WebSocketConfig implements WebSocketConfigurer { @Autowired private WebSocketHandler webSocketHandler; @Override public void registerWebSocketHandlers(WebSocketHandlerRegistry registry) { registry.addHandler(webSocketHandler, "/websocket").setAllowedOrigins("*"); } } ``` 在JavaFX中,您可以使用JavaFX的WebSocket客户端与后端进行通信。您可以创建一个WebSocket客户端类,如下所示: ``` public class WebSocketClient extends WebSocketAdapter { private final String uri; private final WebSocketClientFactory factory = new WebSocketClientFactory(); private WebSocket webSocket; public WebSocketClient(String uri) { this.uri = uri; } public void connect() { try { webSocket = factory.createSocketClient(new URI(uri), this).connect(); } catch (Exception e) { e.printStackTrace(); } } public void send(String message) { if (webSocket != null) { webSocket.send(message); } } @Override public void onWebSocketText(String message) { // 处理接收到的消息 } } ``` 最后,在JavaFX应用程序中,您可以创建WebSocket客户端实例,并使用该实例与后端进行通信。您可以添加以下代码: ``` public class Main extends Application { private static final String WEBSOCKET_URI = "ws://localhost:8080/websocket"; @Override public void start(Stage primaryStage) throws Exception { // 创建WebSocket客户端 WebSocketClient webSocketClient = new WebSocketClient(WEBSOCKET_URI); webSocketClient.connect(); // 发送消息 webSocketClient.send("Hello, world!"); } public static void main(String[] args) { launch(args); } } ``` 以上是Spring BootJavaFX通信的基本原理。您可以根据自己的需要进行修改和扩展。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

滕璇萱Russell

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值