从0到1的springboot项目搭建到打包

环境

jdk + maven + idea

搭建maven项目

如果你想管理包的路劲就改下引用的maven仓库路径(也可以不用改就跳过)

找到你安装的maven路径 --> 在apache-maven-3.9.14\conf路径下面找到settings.xml并打开 --> 搜索localRepository在下面映入一行并加上你要保存的路径

进入idea --> 打开设置

引入springboot的依赖

使用maven创建后的目录结构为

打开pom.xml

1.继承### spring-boot-starter-parent (父级依赖)

xml 复制代码
<parent>
    <groupId>org.springframework.boot</groupId>
    <artifactId>spring-boot-starter-parent</artifactId>
    <version>3.4.4</version> <!-- 请使用官方最新稳定版本 -->
</parent>
  1. 引入spring-boot-starter-web包
xml 复制代码
<!-- Web 应用起步依赖 -->
<dependency>
    <groupId>org.springframework.boot</groupId>
    <artifactId>spring-boot-starter-web</artifactId>
</dependency>
  1. 引入spring-boot-starter-test包
xml 复制代码
<dependency>
    <groupId>org.springframework.boot</groupId>
    <artifactId>spring-boot-starter-test</artifactId>
    <scope>test</scope>
</dependency>
  1. maven打包的依赖
xml 复制代码
<build>
    <plugins>
        <plugin>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-maven-plugin</artifactId>
        </plugin>
    </plugins>
</build>

完整代码

xml 复制代码
<?xml version="1.0" encoding="UTF-8"?>
<project xmlns="http://maven.apache.org/POM/4.0.0"
         xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
         xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
    <modelVersion>4.0.0</modelVersion>

    <groupId>org.example</groupId>
    <artifactId>demo</artifactId>
    <version>1.0-SNAPSHOT</version>

    <parent>
        <groupId>org.springframework.boot</groupId>
        <artifactId>spring-boot-starter-parent</artifactId>
        <version>3.4.4</version> <!-- 请使用官方最新稳定版本 -->
    </parent>

    <properties>
        <maven.compiler.source>17</maven.compiler.source>
        <maven.compiler.target>17</maven.compiler.target>
        <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
    </properties>

    <dependencies>
        <!-- Web 应用起步依赖 -->
        <dependency>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-starter-web</artifactId>
        </dependency>
        <!-- 测试起步依赖 -->
        <dependency>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-starter-test</artifactId>
            <scope>test</scope>
        </dependency>
    </dependencies>

<!--    打包的依赖-->
    <build>
        <plugins>
            <plugin>
                <groupId>org.springframework.boot</groupId>
                <artifactId>spring-boot-maven-plugin</artifactId>
            </plugin>
        </plugins>
    </build>
</project>

加入后刷新下maven

一般改了pom右上角机会出现一个刷新的图标,点下就行

如果没有的话就在右侧的导航栏找到M(maven)的标志,点开然后刷新就行

创建启动类并测试

在src/main/java下面创建一个目录,然后在这个目录下面创建一个启动类

如图:

代码:

typescript 复制代码
package cn.guo;

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

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

启动后没有报错说明没有问题了,也可以写一个get请求试试

测试
kotlin 复制代码
package cn.guo.controller;

import org.springframework.web.bind.annotation.GetMapping;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController;

@RestController
@RequestMapping("/v1/pu/demo")
public class DemoController {

    @GetMapping("/test")
    public String demo1(){
        return "hello";
    }
}

重启后在浏览器访问http://localhost:8080/v1/pu/demo/test

页面展示有hello就成功了

配置端口

现在我们项目默认的是8080,你想修改的话就在resources目录下面新建application.yml或者application.properties(看个人习惯)

yml如图:(注意:缩进以及":"后面都会有一个空格在进行赋值)

properties代码就是:

ini 复制代码
server.port=80

然后重启项目访问http://localhost/v1/pu/demo/test (80是默认端口可以省略,你修改其他的就需要加上)

打包

之前已经装了打包的依赖,然后我们在右侧的导航栏找到maven的标志M --> 展开项目 --> 展开生命周期 点击package或者install进行打包就行

然后你左侧项目的导航栏里有一个target目录,展开就会发现一个jar包(这个就是打包好的项目)

测试jar包能不能用的话就在黑窗口进入你jar包的目录

然后输入 java -jar demo-1.0-SNAPSHOT.jar(注意端口是否被占用)

没有报错就成功了,或者访问下写的测试接口

相关推荐
聪明的笨猪猪几秒前
Java 工程案例:AI 生成 @Async 异步线程池踩坑
java·经验分享·面试·ai编程
学长毕设16 分钟前
基于SpringBoot公务员考试交流平台-附源码
java·spring boot·后端
SL_staff3 小时前
私有化低代码:面向强监管行业的可控数字化实践
java·低代码
三翼鸟数字化技术团队3 小时前
高性能存储引擎RocksDB:原理与Java生态实践
java
SL_staff3 小时前
JVS-APS有限产能建模的七个刚性支点:面向产线真实约束的技术实现解析
java·开源·全栈
特立独行的猫A3 小时前
少 3 个环节、少 1 次 ABI、少 3500 行代码:cj-tauri 与 Ionic/Capacitor 的鸿蒙桥接机制对比
java·后端·python
学长毕设4 小时前
基于SpringBoot的高校后勤报修管理系统-附源码
java·spring boot·后端
特立独行的猫A4 小时前
cj-tauri vs Rust/Tauri 同款播放器实测:编译 21 秒 vs 11 分钟,磁盘 12 MB vs 1.2 GB
java·后端·python
杨凯凡4 小时前
Spring AI RAG 实战:向量检索、租户过滤、引用溯源与防幻觉边界
java·人工智能·spring
小科先生5 小时前
Java springboot调用数据库的基本流程
java·数据库·spring boot