使用Maven构建SpringBoot项目

这篇具有很好参考价值的文章主要介绍了使用Maven构建SpringBoot项目。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

前言

网上介绍了许多如何创建Springboot项目,大多数基于IDE开发工具并且用Maven管理,如果在当前的开发环境并不充裕下,我们可以直接使用Maven命令来创建管理SpringBoot项目,对于习惯使用命令来创建项目来说比较的方便、同时更好的理解SpringBoot的项目结构。

1.创建一个Maven项目

1.1使用Maven创建一个简单的Java项目

以VSCode为例,Ctrl + ` 快捷键打开终端
maven添加springboot,maven,spring boot,java
假设项目的名称为 example
在控制台中输入如下Maven指令即可生成

mvn archetype:generate
 "-DgroupId=com.project"
 "-DartifactId=example" 
 "-DarchetypeArtifactId=maven-archetype-quickstart"
 "-DinteractiveMode=false"
  1. -DgroupId=com.project:组id。
  2. -DartifactId=example:项目名称,maven会根据这个名称在当前目录下新建一个名为该名称的目录用于建立项目。
  3. -DarchetypeArtifactId:项目原型,使用哪种原型来创建项目的初始结构,在这里,我们先使用maven-archetype-quickstart创建一个简单的 Java 应用。
  4. -DinteractiveMode=false :是否已交互模式进行,如果是false的话就会采用默认设置建立项目。

创建成功后如图所示,控制台所示
maven添加springboot,maven,spring boot,java

1.2项目结构介绍

maven添加springboot,maven,spring boot,java

注意:上面构建的只是一个简单的 Java 项目,如果是构建 Web 项目,我们还需要对目录结构进行调整,便于我们后续开发,我们需要做如下调整。

  1. App.java 和 AppTest.java 这两个文件我们不需要,可以直接删除掉。
  2. 在 main 目录下添加 resources 目录,用于存放资源文件。
  3. 在 example/src/main/java/com/project包下创建 example包,并在 /example包下创建 exampleApplication.java 类,作为整个项目的启动项。

经过调整,目录结构如下图所示:
maven添加springboot,maven,spring boot,java

1.3添加项目依赖

<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/maven-v4_0_0.xsd">
  <modelVersion>4.0.0</modelVersion>
  <groupId>com.project</groupId>
  <artifactId>example</artifactId>
  <packaging>jar</packaging>
  <version>1.0-SNAPSHOT</version>
  <name>example</name>
  <url>http://maven.apache.org</url>
  <description>用户权限管理系统</description>
  <!-- 设置父模块,这样就可以继承父模块中的配置信息 -->
  <parent>
    <!-- Springboot依赖 -->
    <groupId>org.springframework.boot</groupId>
    <artifactId>spring-boot-starter-parent</artifactId>
    <version>2.3.1.RELEASE</version>
    <relativePath/>
  </parent>

  <properties>
    <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
    <project.reporting.outputEncoding>UTF-8</project.reporting.outputEncoding>
    <java.version>1.8</java.version>
  </properties>

  <dependencies>
    <!-- 添加 web 依赖 -->
    <dependency>
      <groupId>org.springframework.boot</groupId>
      <artifactId>spring-boot-starter-web</artifactId>
    </dependency>
  </dependencies>
  
  <build>
    <plugins>
      <!-- Spirng Boot Maven 插件 -->
      <plugin>
        <groupId>org.springframework.boot</groupId>
        <artifactId>spring-boot-maven-plugin</artifactId>
      </plugin>
    </plugins>
  </build>
</project>

1.4添加启动类

在启动类中加入main方法,设置为启动类。

package com.project.example;

import org.springframework.boot.SpringApplication;
import org.springframework.boot.autoconfigure.SpringBootApplication;
import org.springframework.boot.web.servlet.ServletComponentScan;

@ServletComponentScan
@SpringBootApplication
public class exampleApplication {
    public static void main(String[] args) {
        SpringApplication.run(exampleApplication.class,args);
        System.out.println("你好,这里是example项目");
    }
}

1.5编译打包项目

终端输入如下命令下载依赖

mvn clean install

执行完毕后,项目结构如下:
maven添加springboot,maven,spring boot,java

执行完上面语句后(或者在创建完项目后),在项目根目录下多了一个 target 目录。target 是用来存放项目构建后的 jar 包、war 包以及编译的 class 文件等文件,target 目录下的所有内容均为 Maven 构建项目过程中生成的。

1.6添加controller内容

项目触目搭建成功,下面来编写一个Controller接口来验证项目是否创建成功

  1. 在 example/src/main/java/com/project/example包下创建 system 包(可以去任何名称),用于存放业务相关的代码。
  2. 在 system 包下添加 controller 包,用于存放前端接口控制器的类。
  3. 在 controller 包下添加FirstController.java 类,作为项目启动的测试类。
package com.project.system.controller;

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

@RestController//Controller 里面的方法都以 json 格式输出
public class FirstController {
    @GetMapping("/first")
    public String first(){
        return "你好";
    }
}

2.启动项目

下面将介绍两种常用的控制台启动项目的方式。

  1. 使用 Maven 启动项目。
  2. 运行 jar 包启动项目。

此处我们是用Maven命令启动项目

2.1使用Maven启动项目

mvn package 编译打包
mvn spring-boot:run 启动项目

启动完成后,控制台出现如下图所示即为启动成功:
maven添加springboot,maven,spring boot,java

3.SpringBoot配置文件详解

3.1配置文件使用说明

在 Spring Boot 项目中,支持如下两种文件格式的配置文件。

application.properties
application.yml

下面我们来看看 properties 配置文件和 yml 配置文件的区别。

  • application.properties 就是常规的 key=value 格式配置文件,例:
# 默认加载配置项
spring.profiles.active=prod
spring.datasource.driver-class-name=com.mysql.jdbc.Driver
spring.datasource.url=jdbc:mysql://127.0.0.1:3306/test
spring.datasource.username=root
spring.datasource.password=root

properties 文件有一个缺点,当要配置的参数比较多时,你就会发现它的层次不是那么清晰,不便于阅读。而且很多同层级的名称都是重复的。

  • yml 文件的基本写法为: key: (空格) value 。值得注意的是,键和值中间用冒号加上空格连接,缺一不可,否则无法读取配置项,案例如下。
spring:
  profiles:
    active: prod
  datasource:
    driver-class-name: com.mysql.jdbc.Driver
    url: jdbc:mysql://127.0.0.1:3306/test
    username: root
    password: root

注意:上下层级的关系用空格表示,空格格数没有要求,只要是左对齐的一列数据都是同一个层级的就行。为了美观建议使用 Tab 缩进或者统一空 4 格区分上下级。

properties 文件和 yml 文件都作为配置文件,他们的目的并没有区别,相比 properties 配置文件,yml 配置文件在写的时候层次感强。Spring 官方推荐使用的格式是 .yml 格式,所以目前大部分 Spring Boot 的 Web 项目的配置文件都是使用 yml 文件。本篇文章中我们也将使用 yml 文件作为项目的配置文件。

3.2配置端口和路径

在 /src/main/resources 目录下创建 application.yml 文件,并写入如下配置内容,我们就可以修改项目的根路径。

server:
  # 配置端口
  # port: 8080
  servlet:
    # 设置项目路径
    context-path: /example

添加完毕后,我们重新打包,运行项目。

mvn package 编译打包
mvn spring-boot:run 启动项目

打开浏览器,输入localhost:8080/upms/hello 进行访问,如下图所示:
maven添加springboot,maven,spring boot,java

3.3自定义配置属性

除了系统提供的配置,我们也可以在 application.yml 中添加如下自定义的配置。

server:
  # 配置端口
  port: 8080
  servlet:
    # 设置项目路径
    context-path: /example

# 自定义配置
example:
  name: example
  version: 0.0.1
  description: example项目

如果想使用配置项,我们只需要在类的属性前加上注解 @Value(“${属性名}”),我们可以在 controller/FirstController.java 中添加如下内容:

package com.project.example.system.controller;

import org.springframework.beans.factory.annotation.Value;
import org.springframework.web.bind.annotation.GetMapping;
import org.springframework.web.bind.annotation.RestController;

@RestController // Controller 里面的方法都以 json 格式输出
public class FirstController {
    @Value("${example.name}")
    private String appName;

    @Value("${example.version}")
    private String appVersion;

    @Value("${example.description}")
    private String appDescription;

    @GetMapping("/Msg")
    public String Msg() {
        return "名称:" + appName + "," +
               "版本:" + appVersion + " ," +
               "描述" + appDescription;
    }

    @GetMapping("/first")
    public String first() {
        return "你好";
    }
}

添加完毕后,我们重新打包,运行项目。

mvn package 编译打包
mvn spring-boot:run 启动项目

打开浏览器,输入localhost:8080/upms/Msg进行访问,如下图所示:

maven添加springboot,maven,spring boot,java

3.4多环境配置

在开发项目的过程中,可能一套程序需要在不同的环境中发布,它的数据库配置、端口配置或者其他配置各不相同,如果每次都来根据需要修改对应的环境配置,是非常容易配置错误的,造成不必要的麻烦。
通常这种情况下,我们可以针对不同的环境配置不同的配置文件来解决。在 Spring Boot 项目中,默认支持下面这两种格式的。

  • application-{name}.properties
  • application-{name}.yml

其中 {name} 对应环境标识。我们在 Spring Boot 项目中也可以创建不同的配置文件,文件名以 application-{name}.yml 的格式。

  • application-dev.yml 开发环境
  • application-test.yml 测试环境
  • application-prod.yml 生产环境

我们在 src/main/java/resources 目录下创建如下图所示的配置文件。
maven添加springboot,maven,spring boot,java
在 application-dev.yml 配置文件中添加如下内容。

# 自定义配置
example:
  name: example
  version: 0.0.2
  description: example项目(开发环境)

在 application-prod.yml 配置文件中添加如下信息。

# 自定义配置
example:
  name: example
  version: 0.0.3
  description: example项目(生产环境)

在 application-test.yml 配置文件中添加如下信息。

# 自定义配置
example:
  name: example
  version: 0.0.4
  description: example项目(测试环境)

在 application-test.yml 配置文件中添加如下信息。

# 自定义配置
example:
  name: example
  version: 0.0.4
  description: example项目(测试环境)

然后在配置文件 application.yml 中添加 spring.profiles.active 来设置当前使用的环境,其中 test 代表默认启用 application-test.yml 配置文件。
maven添加springboot,maven,spring boot,java

也可以将 test 修改成 dev 或者 prod 后测试看下效果,这里我们就不再演示了。

4.个性化Banner配置

我们注意到 Spring Boot 项目启动时,控制台会打印自带的 Banner,如下图所示:maven添加springboot,maven,spring boot,java
如果我们也想自己定制一个怎么办,这里有个定制 Banner 的网站
英文ASCII艺术字,Spring Boot自定义启动Banner在线生成工具
文字、图片都可以秀起来,怎么秀就看你的了.
只需要在 /resources 目录下创建一个 banner.txt 文件,添加位置如下:
maven添加springboot,maven,spring boot,java
并在 banner.txt 文件中添加如下内容。

                                   _ __     _            
   ___    __ __   __ _    _ __    | '_ \   | |     ___   
  / -_)   \ \ /  / _` |  | '  \   | .__/   | |    / -_)  
  \___|   /_\_\  \__,_|  |_|_|_|  |_|__   _|_|_   \___|  
_|"""""|_|"""""|_|"""""|_|"""""|_|"""""|_|"""""|_|"""""| 
"`-0-0-'"`-0-0-'"`-0-0-'"`-0-0-'"`-0-0-'"`-0-0-'"`-0-0-' 

添加完毕后,Spring Boot 启动的时候会去加载这个文件,重新编译运行就可以看到效果。

mvn package 编译打包
mvn spring-boot:run 启动项目

maven添加springboot,maven,spring boot,java
虽然用处不大,但是看起来很炫酷,哈哈哈

结束

在本篇文章中,介绍了如何使用 Spring Boot 来搭建 Java Web 项目,通过 Maven 工具安装、打包和运行整个项目,项目构建完毕后,设置了自定义配置项,并在项目中使用配置信息,针对不同环境定制不同的配置项。并且提供一个简单的请求验证了项目的运行效果,最后为项目定制了一个 Banner。

以上为个人的学习使用心得,如有不对请指出,欢迎大家讨论。文章来源地址https://www.toymoban.com/news/detail-602359.html

到了这里,关于使用Maven构建SpringBoot项目的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • 使用maven创建springboot项目

    命令行或者idea、eclipse快捷创建也可以 访问loalhost:8080,因为没有其他接口所以报错 新建HelloController.java 重新启动项目访问

    2024年02月10日
    浏览(46)
  • 【Maven】SpringBoot项目使用maven-assembly-plugin插件多环境打包

    1.创建SpringBoot项目并在pom.xml文件中添加maven-assembly-plugin配置 2.创建 在src/main/assembly目录下创建assembly.xml文件 3.在src/main/bin创建在linux环境启动jar包的脚本 4.配置application.yml文件 5.启动项目 6.打包 7.打包后的目录结构 8.上传到linux服务器并启动jar包 9.调用接口测试 10.源码地址

    2024年02月12日
    浏览(40)
  • SpringBoot工程Maven构建引用本地jar包依赖

    目前大部分项目使用了SpringBoot,在项目实施过程中可能遇到没有搭建私有仓库,并且需要引入第三方提供的jar包(例如某些SDK)的情况。一般遇到以上情况可以将第三方提供的jar包通过以下命令安装到本地仓库,然后本地进行构建打包。 但是实际场景经常需要通过自动部署

    2024年01月24日
    浏览(45)
  • Maven命令启动SpringBoot项目

    用Maven命令启动SpringBoot项目,记录如下: mvn spring-boot:run C:UsersAdministratorsourcereposkd-datacenterserverkd-datacentermvn spring-boot:run  

    2024年02月13日
    浏览(44)
  • IDEA创建SpringBoot+maven项目

    1.新建file-new-project项目 2. 选择springboot项目,修改项目名,选择java8,type默认为maven,点击next 3.选择相关依赖,web中选择spring web,SQL中选择mysql driver,developer tools中选择lombok,点击finish 4.新建项目如图 5.设置maven的配置,file-settings 6.选择build,execution,deployment-build tools -maven 7.选择

    2024年02月15日
    浏览(67)
  • idea导入springboot项目没有maven

            是因为项目识别pom文件失败了,需要我们手动添加maven的主pom文件。         在项目中双击shift按钮,进入文件查找的功能,然后搜索maven。 然后点击Add Maven Project添加maven主配置文件,然后等待编译就行。     参考链接: Idea导入SpringBoot项目,没有maven - 简书 (jian

    2024年02月15日
    浏览(57)
  • 构建SpringBoot工程时找不到插件“spring-boot-maven-plugin”

    目录 一、找不到插件“spring-boot-maven-plugin” 二、再次启动时,又发现报错         Unable to find a single main class from the following candidates [com.itheima.Application, com.example.springboot01.Springboot01Application]上面报错的意思是,有多个App类,它不知用哪个  三、把该插件打包后,在jar包的

    2024年02月07日
    浏览(64)
  • SpringBoot多模块项目开发(Maven多模块项目)

    不论是maven还是Gradle,参考优秀的开源项目和boot官网的最佳实践使用构建工具组织代码来构建自己的项目,比如nacos、springboot,ruoyi等等; 要找到 Spring Boot 官网上关于 Maven 多模块项目的最佳实践,可以按照以下步骤进行: 打开 Spring Boot 官网(spring.io/projects/sp… 在导航菜单

    2024年02月04日
    浏览(40)
  • 解决IDEA新建springboot项目时不能导入maven依赖(右边没有maven窗口)

    1.问题:今天在github上找了一个springboot项目,但是用idea打开后发现不能导入maven依赖,并且在IDEA右边也没有出现maven窗口,如下图  2.解决方法:右键点击pom.xml文件,然后点击“Add as Maven Project”即可  此时发现右边出现maven,然后在pom.xml中重新加载maven依赖即可  

    2024年02月14日
    浏览(64)
  • IDEA 中搭建 Spring Boot Maven 多模块项目 (父SpringBoot+子Maven)

    [Ref] 新建一个SpringBoot项目 删除无用的 .mvn 目录、 src 目录、 mvnw 及 mvnw.cmd 文件,最终只留 .gitignore 和 pom.xml ① 删除 dependencies 标签及其中的 spring-boot-starter 和 spring-boot-starter-test 依赖,因为 Spring Boot 提供的父工程已包含,并且父 pom 原则上都是通过 dependencyManagement 标签管理

    2024年01月20日
    浏览(73)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包