大家好,我是程序员7歌,从今天开始,我将为大家讲解Springboot应用开发知识。希望大家仔细学习,有不懂的知识可以私信咨询我。
Springboot简介
Spring Boot是一个简化Spring开发的框架。用来监护spring应用开发,约定大于配置,去繁就简,just run 就能创建一个独立的,产品级的应用。
我们在使用Spring Boot时只需要配置相应的Spring Boot就可以用所有的Spring组件,简单的说,spring boot就是整合了很多优秀的框架,不用我们自己手动的去写一堆xml配置然后进行配置。从本质上来说,Spring Boot就是Spring,它做了那些没有它你也会去做的Spring Bean配置。
Springboot优点:
1.可以快速创建独立运行的Spring项目,并且与主流的开发框架集成。
2.使用嵌入式的Servlet容器,应用无需打成War包
3.starters自动依赖与版本控制
4.大量的自动配置,简化开发,也可修改默认值
5.无需配置xml,无代码生成,开箱即用
6.准生产环境的运行时应用监控
7.与云计算的天然集成
创建Springboot项目
我们第一次接触Springboot项目,先来看看如何创建程序员的第一个Springboot项目吧!开发工具IDE我是用的是IntelliJ IDEA,这应该是目前最好用的IDE。打开IDEA开发工具,
点击File -> New -> Project
如下图:
点击Project,在弹出的创建项目页面选择项目类型,这是我们测试创建Spring Initializr,采用最简单的方式来创建Springboot工程,也可以使用Maven开直接构建。
选择Spring Initializr
如下图:
点击next进入创建项目基本信息界面:
填写Springboot工程基本信息
Group: 组织ID,一般可以分为多个段,第一段为域,第二段为公司名称。域又分为 org、com、cn等等,其中 org为非营利组织,com为商业组织。
Artifact: 唯一标识符,一般是项目名称
如下图:
点击next按钮进入引入开发依赖包界面,Spring Initializr为我们提供了很多的开发组件,不同的组件有不同的作用,在我们测试学习阶段引入依赖Web -> Spring Web 就可以了,选择好依赖包之后点击Next -> Finish
如下图:
以上就是Springboot的创建过程,来看一下工程的目录结构:
工程结构分析:
- Example1Application:
主函数,启动类,运行它如果运行了 Tomcat、Jetty、Undertow 等容器 - statics:
存放静态资源 js/css/images 等 - templates:
存放 html 模板文件 - application.properties:
主要的配置文件,启动时候会自动加载application.yml/application.properties - test:
测试文件存放目录 - pom.xml:
pom.xml文件是Maven构建的基础,里面包含了我们所依赖JAR和Plugin的信息
因为我们使用的Spring Initializr插件来创建的工程,所以很多配置和依赖就不需要我们手动去写,pom.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 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>com.july</groupId>
<artifactId>example1</artifactId>
<version>0.0.1-SNAPSHOT</version>
<name>example1</name>
<description>Demo project for Spring Boot</description>
<properties>
<java.version>1.8</java.version>
</properties>
<dependencies>
<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>
依赖包分析:
- spring-boot-starter-web:
默认就内嵌了Tomcat 容器,如需要更换容器也极其简单 - spring-boot-starter-test:
测试包,当我们使用 mvn package 的时候该包并不会被打入,因为它的生命周期只在 test 之内 - spring-boot-maven-plugin:
编译插件
启动类分析:
在Springboot工程中,一个项目只能有一个启动类即一个main函数,不然在我们进行工程打包时spring-boot-maven-plugin 将找不到主函数,启动类代码如下:
package com.july.example1;
import org.springframework.boot.SpringApplication;
import org.springframework.boot.autoconfigure.SpringBootApplication;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController;
/**
* 程序员的第一个Springboot项目
* @author zqk
* @since 2019/12/2
*/
@SpringBootApplication
@RestController
public class Example1Application {
public static void main(String[] args) {
SpringApplication.run(Example1Application.class, args);
}
@RequestMapping("/test")
public String test(){
return "程序员7歌的第一个Springboot项目";
}
}
配置文件分析:
如果我们现在启动Springboot项目,可以发现项目默认端口号为8080(web程序默认端口),其实我们可以通过修改配置文件修改项目端口的,以后项目多了,大家就会发现端口的重要性,如下代码:
2019-12-02 15:57:53.907 INFO 10965 --- [ main] o.s.b.w.embedded.tomcat.TomcatWebServer : Tomcat started on port(s): 8080 (http) with context path ''
修改默认配置文件:
配置文件有两种格式:properties和yaml,写法风格不同,properties是链状式,yaml是树形写法,个人比较喜欢yaml,配置如下:
server:
port: 8607 #项目端口号
servlet:
context-path: /example1 #项目名称(上下文)
再次启动项目,可以发现端口已经变成8607了,如下日志:
2019-12-02 16:03:44.872 INFO 11091 --- [ main] o.s.b.w.embedded.tomcat.TomcatWebServer : Tomcat started on port(s): 8607 (http) with context path '/example1'
我们打开浏览器,地址栏访问:http://localhost:8607/example1/test,可以看到浏览正常显示,显示内容为启动类里面我们定义的接口返回信息,如下图:
以上就是今天为大家讲解的如何创建Springboot工程,按照上面的步骤来实践,可以轻松实现Springboot的学习,感谢大家的观看~~❤️