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项目了。

相关推荐
蔚一7 分钟前
Java设计模式—面向对象设计原则(六) ----->合成复用原则(CRP) (完整详解,附有代码+案例)
xml·java·开发语言·设计模式·intellij-idea·合成复用原则
ok!ko11 分钟前
设计模式之建造者模式(通俗易懂--代码辅助理解【Java版】)
java·设计模式·建造者模式
一 乐11 分钟前
点餐|基于java的电子点餐系统小程序(源码+数据库+文档)
java·开发语言·前端·数据库·小程序·论文
weixin_5860620226 分钟前
Nacos与Eureka的区别:深入解析微服务中的服务注册与发现
微服务·云原生·eureka
xianjie031830 分钟前
几种修改docker默认存储位置的方法
spring cloud·docker·eureka
hahaha 1hhh32 分钟前
docker
云原生·eureka
Hcoco_me43 分钟前
面试爱考 | 设计模式
java·c++·设计模式·面试
cyt涛1 小时前
微服务保护之熔断降级
java·运维·微服务·熔断·降级·雪崩·保护
ganjiee00071 小时前
力扣(leetcode)每日一题 2848 与车相交的点
java·算法·leetcode
kkk2358132 小时前
成功激活mac idea 记录
java·macos·intellij-idea