SpringBoot 3.0实战

SpringBoot 3.0实战

然后新建一个Maven工程,添加SpringBoot依赖

XML 复制代码
<parent>
    <groupId>org.springframework.boot</groupId>
    <artifactId>spring-boot-starter-parent</artifactId>
    <version>3.0.0</version>
</parent>

<dependencies>
    <dependency>
        <groupId>org.springframework.boot</groupId>
        <artifactId>spring-boot-starter-web</artifactId>
    </dependency>
</dependencies>

以及SpringBoot的插件

XML 复制代码
<build>
	<plugins>
		<plugin>
			<groupId>org.graalvm.buildtools</groupId>
			<artifactId>native-maven-plugin</artifactId>
		</plugin>
		<plugin>
			<groupId>org.springframework.boot</groupId>
			<artifactId>spring-boot-maven-plugin</artifactId>
		</plugin>
	</plugins>
</build>

以及一些代码

java 复制代码
@RestController
public class ZhouyuController {

    @Autowired
    private UserService userService;

    @GetMapping("/demo")
    public String test() {
        return userService.test();
    }

}
java 复制代码
package com.zhouyu;

import org.springframework.stereotype.Component;

@Component
public class UserService {

    public String test(){
        return "hello zhouyu";
    }
}
java 复制代码
package com.zhouyu;

import org.springframework.boot.SpringApplication;
import org.springframework.boot.autoconfigure.SpringBootApplication;

@SpringBootApplication
public class MyApplication {
    public static void main(String[] args) {
        SpringApplication.run(MyApplication.class, args);
    }
}

这本身就是一个普通的SpringBoot工程,所以可以使用我们之前的方式使用,同时也支持利用native-image命令把整个SpringBoot工程编译成为一个exe文件。

同样在x64 Native Tools Command Prompt for VS 2019中,进入到工程目录下,执行mvn -Pnative native:compile进行编译就可以了,就能在target下生成对应的exe文件,后续只要运行exe文件就能启动应用了。

在执行命令之前,请确保环境变量中设置的时graalvm的路径。

编译完成截图:

这样,我们就能够直接运行这个exe来启动我们的SpringBoot项目了。

相关推荐
这辈子谁会真的心疼你9 分钟前
怎么修改视频的拍摄信息?详细的修改过程
java·服务器·音视频
小碗羊肉9 分钟前
【从零开始学Java | 第二十四篇】泛型的继承和通配符
java·开发语言·新手入门
愤豆15 分钟前
15-Java语言核心-并发编程-并发容器详解
java·开发语言
liangblog20 分钟前
Spring Boot中手动实例化 `JdbcTemplate` 并指定 数据源
java·spring boot·后端
liuyao_xianhui20 分钟前
优选算法_topk问题_快速排序算法_堆_C++
java·开发语言·数据结构·c++·算法·链表·排序算法
liuyao_xianhui22 分钟前
优选算法_堆_最后一块石头的重量_C++
java·开发语言·c++·算法·链表
杰克尼23 分钟前
知识点总结--day12(常用组件3/3)
云原生·eureka
好家伙VCC23 分钟前
# 发散创新:基于状态通道的以太坊智能合约高效交互实践在区块链应用开发中,**交易
java·python·区块链·智能合约
Noushiki26 分钟前
数据一致性保障方案 -java后端
java·开发语言
Meepo_haha31 分钟前
Maven Spring框架依赖包
java·spring·maven