SpringBoot2-基础入门
同学们,想要学习springboot2,首先得具备以下要求:
- 熟悉Spring的基础知识(当然学过springboot的最好)
- 用idea构建maven项目(以下为配置环境的要求)
- Java8以上
- Maven3.3及以上
SpringBoot配置
1、系统要求
- Java8~java14之内
- Maven3.3+
- idea
maven设置:
找到自己maven的conf/settings.xml,添加以下代码:
<!-- 配置阿里云镜像,方便我更快地下载jar包 -->
<mirrors>
<mirror>
<id>nexus-aliyun</id>
<mirrorOf>central</mirrorOf>
<name>Nexus aliyun</name>
<url>http://maven.aliyun.com/nexus/content/groups/public</url>
</mirror>
</mirrors>
<!--maven项目编译使用jdk1.8 -->
<profiles>
<profile>
<id>jdk-1.8</id>
<activation>
<activeByDefault>true</activeByDefault>
<jdk>1.8</jdk>
</activation>
<properties>
<maven.compiler.source>1.8</maven.compiler.source>
<maven.compiler.target>1.8</maven.compiler.target>
<maven.compiler.compilerVersion>1.8</maven.compiler.compilerVersion>
</properties>
</profile>
</profiles>
2、编写一个helloworld
需求:浏览器发送/hello请求,响应Hello world
方法一:idea搭建maven项目
看到这里,是不是某些同学觉得搭建maven项目早就过时了,可以使用快速便捷的Spring Initilizr。同学们别急啊,这不,后面会说的。博主只是希望大家一定要亲自试试maven项目搭建,才能弄清除整合SpringBoot到底需要什么牛马(当然是基于springboot2)
1.引入依赖
<!-- springboot的父级依赖,确定当前项目为Springboot项目,spring-boot-starter-boot是一个特殊的starter,用来提供相关的Maven默认依赖-->
<parent>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-parent</artifactId>
<version>2.3.4.RELEASE</version>
</parent>
<!--web项目的配置都在spring-boot-starter-web中-->
<dependencies>
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-web</artifactId>
</dependency>
</dependencies>
注意:spring-boot-starter-parent提供了以下特性:
- 默认使用Java8,可以添加以下配置修改版本:
<properties>
<java.version>1.8</java.version>
</properties>
- 默认使用UTF-8编码,可添加以下配置修改编码:
<properties>
<project.build.sourceEncoding>GBK</project.build.sourceEncoding>
</properties>
-
省去了version信息
使用 spring-boot-starter-parent 的话,可以这样,继承默认版本
-
识别插件的配置
能够识别 **application.properties** 、 **application.yml** 和 **application.yaml** 类型的文件,同时也能支持 profile-specific 类型的文件(如: **application-foo.properties** and **application-foo.yml**,这个功能可以更好的配置不同生产环境下的配置文件)。
2.创建主程序
/**
* 主程序
* @SpringBootApplication :这是一个springboot应用
*/
@SpringBootApplication
public class MainApplication {
public static void main(String[] args) {
SpringApplication.run(MainApplication.class, args);
}
}
3.编写业务
@RestController
public class HelloController {
@RequestMapping("/hello")
public String handle01(){
return "Hello, Spring Boot 2!";
}
}
注意:Springboot还有一个很重要的文件,就是它的核心配置文件
application.properties:
server.port=8888
或application.yml(推荐:首选):
server:
port: 8888
4.运行
直接运行main方法(主程序类中main方法)结果:
打包成jar包运行 (与直接运行main方法等同)
需要加入插件
<!-- 把项目打包成jar包,直接在目标服务器执行即可-->
<plugins>
<plugin>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-maven-plugin</artifactId>
</plugin>
</plugins>
打包后在项目的target目录下打开cmd命令窗口输入java -jar <打包的文件名>,即可在cmd命令窗口中启动spring boot项目。(访问方式与idea中相同)注意:要取消掉cmd的快速编辑模式
这不,更快速便捷的方法二不就来了吗!!!
方法二:idea搭建Spring Initilizr(项目初始化向导)
当然,我们使用了Spring Initilizr的话,就没有上面方法一的一系列的复杂配置
使用 Spring Initilizr 的好处:
1. 选择我们需要的开发场景,不需要我们逐个在pom.xml中导入依赖(自动依赖引入)
2. 自动创建项目结构
就连核心配置文件,已经创建好。如果想使用yaml文件编写,只需重命名application.properties 或 application.yml 即可。
3. 自动编写好了主配置类
所有的配置都由Spring Initilizr(项目初始化向导)创建好了,我们只需编写我们的业务即可!
运行结果: