首页 > 其他分享 >SpringBoot2.x系列教程07--新纪元之Maven方式创建SpringBoot项目(掌握)

SpringBoot2.x系列教程07--新纪元之Maven方式创建SpringBoot项目(掌握)

时间:2022-12-23 15:34:26浏览次数:51  
标签:07 项目 -- Spring boot Boot Maven 添加


SpringBoot系列教程07--新纪元之Maven方式创建SpringBoot项目(掌握)
作者:一一哥

一.Maven方式创建Spring Boot项目

1.配置Maven环境

在以maven方式创建Spring Boot项目之前,请先确保自己的Maven并配置好环境变量,并且在ideal中关联好maven环境。

SpringBoot2.x系列教程07--新纪元之Maven方式创建SpringBoot项目(掌握)_maven

2.创建一个新的maven项目

SpringBoot2.x系列教程07--新纪元之Maven方式创建SpringBoot项目(掌握)_spring_02

3.设置项目坐标信息

SpringBoot2.x系列教程07--新纪元之Maven方式创建SpringBoot项目(掌握)_maven_03

到此为止,就已经成功的创建出一个maven项目了,但是此时还不是Spring Boot项目。

SpringBoot2.x系列教程07--新纪元之Maven方式创建SpringBoot项目(掌握)_spring_04

4.继承初始父项目

在刚才新建项目的pom.xml文件中添加spring-boot-starter-parent依赖,此时该项目就被改造成了一个Spring Boot项目。

SpringBoot2.x系列教程07--新纪元之Maven方式创建SpringBoot项目(掌握)_maven_05

<parent>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-parent</artifactId>
<version>2.2.5.RELEASE</version>
<relativePath/> <!-- lookup parent from repository -->
</parent>

添加初始父项的作用

当添加了spring-boot-starter-parent依赖之后,我们的项目中就可以直接继承父依赖中合理的默认值。parent父项目提供以下功能:

  • 设置Java 1.8作为默认的编译器;
  • UTF-8编码;
  • 允许省略常见依赖的标签。

注意:

我们只需在该依赖上指定Spring Boot版本,以后如果再导入其他的starters依赖,就不必在添加版本号了。

5.添加Spring Boot Maven插件

在Spring Boot中包含一个Maven插件,可以将项目打包为可执行的jar。如果想使用它,我们可以将该插件添加到节点处。

SpringBoot2.x系列教程07--新纪元之Maven方式创建SpringBoot项目(掌握)_xml_06

<build>
<plugins>
<plugin>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-maven-plugin</artifactId>
</plugin>
</plugins>
</build>

6.添加web模块的依赖

只有添加了web模块的依赖,咱们的项目才能启动运行起来。

SpringBoot2.x系列教程07--新纪元之Maven方式创建SpringBoot项目(掌握)_xml_07

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

7.添加代码

为了完成我们的应用程序,我们需要创建一个Java文件。默认情况下,Maven编译源代码存放在src/main/java,我们在该目录下创建package包,然后在这里创建我们的第一个入口类:HelloBootApplication.

SpringBoot2.x系列教程07--新纪元之Maven方式创建SpringBoot项目(掌握)_maven_08

/**
* Spring Boot启动类,定义了一个"/"访问接口
*/
@RestController
@SpringBootApplication
public class HelloBootApplication {

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

@RequestMapping("/")
String hello() {
return "Hello Spring Boot!";
}

}

@RestController,@SpringBootApplication和@RequestMapping注解

我们的HelloBootApplication类的第一个注解是@RestController。这被称为 stereotype annotation。添加了该注解之后,我们的类就变成了一个Web @Controller.

@SpringBootApplication注解使得当前类成为一个入口类,我们的项目就是在这里启动。

@RequestMapping注解提供了“路由”的信息,它告诉Spring,任何带有”/“路径的HTTP请求都应映射到该hello()方法上。

其中@RestController与@RequestMapping注解是Spring MVC的注解,并非Spring Boot特有的注解。

8.启动项目

点击启动按钮,启动当前web项目。

SpringBoot2.x系列教程07--新纪元之Maven方式创建SpringBoot项目(掌握)_maven_09

在浏览器中输入地址,执行web请求。

SpringBoot2.x系列教程07--新纪元之Maven方式创建SpringBoot项目(掌握)_spring_10

可以看到我们的项目成功的运行,请求也成功的响应了。

SpringBoot的方便之处

  • 没有配置 web.xml;
  • 没有配置 application.xml,Spring Boot 帮你配置了;
  • 没有配置 application-mvc.xml,Spring Boot 帮你配置了;
  • 没有配置 Tomcat,Spring Boot 内嵌了 Tomcat 容器.

标签:07,项目,--,Spring,boot,Boot,Maven,添加
From: https://blog.51cto.com/u_7044146/5965801

相关文章

  • CSS3
    CSS1.css是什么2.CSS怎么用(快速入门)3.CSS选择器(重点+难点)4.美化页面(文字、阴影、超链接、列表、渐变…)5.盒子模型6.浮动7.定位8.网页动画(特效)1.什么是CSS1、什......
  • 当谈论 React hook,我们究竟说的是什么?
    这个标题很大,但是落点很小,只是我,一个开发者在学习和使用hooks中的一点感受和总结。Reacthook的由来Reacthook的由来,其实也可以看作是前端技术不断演进的结果。在......
  • SpringBoot2.x系列教程25--整合SpringMVC之欢迎页面与自定义Favicon
    SpringBoot2.x系列教程25--整合SpringMVC之欢迎页面与自定义Favicon作者:一一哥一.SpringBoot设置欢迎页面1.默认欢迎页的源码在SpringBoot中,默认的欢迎界面是index.html,那......
  • 基于 XML 的 AOP 配置
    (一)环境搭建1、导入依赖<dependency><groupId>org.springframework</groupId><artifactId>spring-context</artifactId>......
  • 肯天脱模剂 | 螺杆清洗料助力“包装行业”加工
    夏天的唯一缺点恐怕就是热了吧?但因为热我们可以吃冰淇淋、吃西瓜,还能品尝到各种美味的饮料哦!回头想想这也是夏天的专属“福利”吧,当然在炎炎夏日,爱美的女士还会用到各种保湿......
  • 设计模式之美--结构型设计模式的区别
    结构型设计模式:主要总结一些类和对象组合在一起的经典结构,这些经典结构去解决特定应用场景的问题。代理模式:用来给原始类附加不想关的其他功能;装饰器模式:适配器模式:桥......
  • 搭建基于lvs+nginx的负载均衡服务集群
    GreatSQL社区原创内容未经授权不得随意使用,转载请联系小编并注明来源。GreatSQL是MySQL的国产分支版本,使用上与MySQL一致。作者:蟹黄瓜子文章来源:社区投稿1.基于四层......
  • SpringBoot2.x系列教程58--SpringBoot中整合Redis实现持久化缓存
    SpringBoot2.x系列教程58--SpringBoot中整合Redis实现持久化缓存作者:一一哥在上一章节中,我们利用默认的ConcurrentHashMap来实现了一种默认的内存级别的缓存方案。但是该方......
  • 使用canvas绘制时钟
    <!DOCTYPEhtml><htmllang="en"><head><metacharset="UTF-8"><metahttp-equiv="X-UA-Compatible"content="IE=edge"><metaname......
  • SpringBoot2.x系列教程47--多数据源配置之分包实现
    SpringBoot2.x系列教程47--多数据源配置之分包实现作者:一一哥一.概述随着并发量的不断增加,单个数据库可能难以承受高并发所带来的压力,此时我们通常会对数据库进行拆分或是......