SpringBoot入门 | 第一篇:如何构建一个SpringBoot项目
1. 介绍SpringBoot
SpringBoot主要是为了简化Spring应用的创建、运行、调试、部署等一系列问题而诞生的产物。通过SpringBoot我们可以更加专注业务本身,而不是去耗费精力去维护大量的XML配置文件,我们只需要遵循规范,引用SpringBoot提供给我们的starter就可以很轻松的搭建出一个SpringBoot项目。
SpringBoot的主要目标是:
- 为Spring开发者提供快速且简单的入门体验
- 简化配置,开箱即用
- 提供一些常见且低耦合的功能,如监控、web容器、安全等
- 没有代码生成,也不需要xml配置
1.1 目标
- 创建一个SpringBoot项目
- 集成web (SpringMVC)
- 更改项目端口
3. 准备
SpringBoot提供了一系列的依赖,所以需要一个构建工具 maven
或者 Gradl
,我比较熟悉 maven
,就选择使用maven。开发工具使用的是 IDEA
(后续皆是如此)
4. 开始
4.1 创建项目
初次接触,我们先来看看如何创建一个Spring Boot
项目,这里以IntelliJ IDEA
为例,其他的IDE工具小伙伴们自行搜索创建方式。创建完项目后,各位小伙伴请认真、细心的对比下与传统的WEB工程有何区别(如:目录结构)。
File->New->Project
选择Spring Initializr
**
**填写项目基本信息
Group
组织ID一般分为多个段,这里我只说两段,第一段为域,第二段为公司名称。域又分为org、com、cn
等等,其中org为非营利组织,com为商业组织
。如阿里、淘宝(com.alibaba/com.taobao)。Artifact:
唯一标识符,一般是项目名称- 别的字面意思理解
选择包:
Spring Initializr
为我们提供了很多的选项,不同的选项有不同的作用,在初期我们只需要依赖Web -> Spring Web
** 就可以了,选择好依赖包之后点击**Next
-> Finish
**
**
4.2 项目结构说明
目录结构
- src
-main
-java
-package
#主函数,启动类,运行它如果运行了 Tomcat、Jetty、Undertow 等容器
-SpringbootApplication
-resouces
#存放静态资源 js/css/images 等
- statics
#存放 html 模板文件
- templates
#主要的配置文件,SpringBoot启动时候会自动加载application.yml/application.properties
- application.yml
#测试文件存放目录
-test
# pom.xml 文件是Maven构建的基础,里面包含了我们所依赖JAR和Plugin的信息
- pom
POM依赖
<?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 https://maven.apache.org/xsd/maven-4.0.0.xsd">
<modelVersion>4.0.0</modelVersion>
<parent>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-parent</artifactId>
<version>2.2.1.RELEASE</version>
<relativePath/> <!-- lookup parent from repository -->
</parent>
<groupId>org.glitter.springboot</groupId>
<artifactId>replace1</artifactId>
<version>0.0.1-SNAPSHOT</version>
<name>replace1</name>
<description>搭建SpringBoot</description>
<properties>
<java.version>1.8</java.version>
</properties>
<dependencies>
<!--web,默认使用tomcat容器-->
<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>
<exclusions>
<exclusion>
<groupId>org.junit.vintage</groupId>
<artifactId>junit-vintage-engine</artifactId>
</exclusion>
</exclusions>
</dependency>
</dependencies>
<build>
<!--编译插件-->
<plugins>
<plugin>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-maven-plugin</artifactId>
</plugin>
</plugins>
</build>
</project>
4.3 编写代码
该工程中的主函数入口是 org.glitter.springboot.replace1.Replace1Application
,亦为该工程的启动入口,我们创建的所有类必须在org.glitter.springboot.replace1
,创建~/logic/controller/HelloController.java
运行Replace1Application.java下的main
在浏览器中访问http://localhost:8080/hello?name=player
4.4 初窥配置文件
启动的时候可以发现SpringBoot的默认端口号是8080.
2019-11-19 11:59:56.757 INFO 155372 --- [ main] o.s.b.w.embedded.tomcat.TomcatWebServer : Tomcat started on port(s): 8080 (http) with context path ''
在 application.properties
中修改默认配置
server.port=9090
再次启动项目,在日志中我们可以看到:
访问http://localhost:9090/hello?name=player就可以访问啦