关键词:
Spring Boot 简介
Spring Boot 是 Spring 家族中的一个全新的框架,它用来简化 Spring 应用程序的创建和开发过程,也可以说 Spring Boot 能简化我们之前采用 SpringMVC + Spring + MyBatis 框架进行开发的过程。
在以往我们采用 SpringMVC + Spring + MyBatis 框架进行开发的时候,搭建和整合三大框架,我们需要做很多工作,比如配置 web.xml,配置 Spring,配置 MyBatis,并将它们整合在一起等,而 Spring Boot 框架对此开发过程进行了革命性的颠覆,完全抛弃了繁琐的 xml 配置过程,采用大量的默认配置简化我们的开发过程。
Spring Boot 入门
创建一个 Module,选择类型为 Spring Initializr 快速构建
设置 GAV 坐标及 pom 配置信息
选择 Spring Boot 版本及依赖
会根据选择的依赖自动添加起步依赖并进行自动配置
设置项目名称、项目路径
提示:点击 Finish,如果是第一次创建,在右下角会提示正在下载相关的依赖
Show all
项目创建完毕,如下
项目结构
- static:存放静态资源,如图片、CSS、JavaScript 等
- templates:存放 Web 页面的模板文件
- application.properties/application.yml 用于存放程序的各种依赖模块的配置信息,比如 服务端口,数据库连接配置等
对 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 http://maven.apache.org/xsd/maven-4.0.0.xsd">
<modelVersion>4.0.0</modelVersion>
<!--继承 SpringBoot 框架的一个父项目,所有自己开发的 Spring Boot 都必须的继承-->
<parent>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-parent</artifactId>
<version>2.2.1.RELEASE</version>
<relativePath/> <!-- lookup parent from repository -->
</parent>
<!--当前项目的 GAV 坐标-->
<groupId>com.bjpowernode.springboot</groupId>
<artifactId>002-springboot-springmvc</artifactId>
<version>1.0.0</version>
<!--maven 项目名称,可以删除-->
<name>002-springboot-springmvc</name>
<!--maven 项目描述,可以删除-->
<description>Demo project for Spring Boot</description>
<!--maven 属性配置,可以在其它地方通过$方式进行引用-->
<properties>
<java.version>1.8</java.version>
</properties>
<dependencies>
<!--SpringBoot 框架 web 项目起步依赖,通过该依赖自动关联其它依赖,不需要我们一个一个去添加了
-->
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-web</artifactId>
</dependency>
<!--SpringBoot 框架的测试起步依赖,例如:junit 测试,如果不需要的话可以删除-->
<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>
<!--SpringBoot 提供的打包编译等插件-->
<plugin>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-maven-plugin</artifactId>
</plugin>
</plugins>
</build>
</project>
对 SpringBoot 项目结构进行说明
- mvn | mvnw | mvnw.cmd:使用脚本操作执行 maven 相关命令,国内使用较少,可删除
- .gitignore:使用版本控制工具 git 的时候,设置一些忽略提交的内容
- static|templates:后面模板技术中存放文件的目录
- application.properties:SpringBoot 的配置文件,很多集成的配置都可以在该文件中进行配置,例如:Spring、springMVC、Mybatis、Redis 等。目前是空的
- Application.java:SpringBoot 程序执行的入口,执行该程序中的 main 方法,SpringBoot就启动了
创建一个 Spring MVC 的 SpringBootController
SpringBootController 类所在包:com.lcz.springboot.controller
package com.lcz.springboot.controller;
import org.springframework.stereotype.Controller;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.ResponseBody;
@Controller
public class SpringBootController
@RequestMapping(value = "/springBoot/say")
public @ResponseBody String say()
return "Hello,springBoot!";
注意:新创建的类一定要位于 Application 同级目录或者下级目录,否则 SpringBoot 加载不到。
例如Application在springboot目录下,那么你新创建的类只能在springboot目录下,可以直接在springboot目录下也可以是springboot目录下的其它目录,一句话来说:只要在springboot目录内就可以读取到!
在 IDEA 中右键,运行 Application 类中的 main 方法
通过在控制台的输出,可以看到启动 SpringBoot 框架,会启动一个内嵌的 tomcat,端口号为 8080,上下文根为空
在浏览器中输入http://localhost:8080//springBoot/say
入门案例分析
- Spring Boot 的父级依赖 spring-boot-starter-parent 配置之后,当前的项目就是 SpringBoot 项目
- spring-boot-starter-parent 是一个 Springboot 的父级依赖,开发SpringBoot 程序都需要继承该父级项目,它用来提供相关的 Maven 默认依赖,使用它之后,常用的 jar包依赖可以省去 version 配置
- Spring Boot 提供了哪些默认 jar 包的依赖,可查看该父级依赖的 pom 文件
- 如果不想使用某个默认的依赖版本,可以通过 pom.xml 文件的属性配置覆盖各个依赖项
通过 pom.xml 文件的属性配置覆盖各个依赖项,比如覆盖 Spring 版本:
<properties>
<spring-framework.version>5.0.0.RELEASE</ spring-framework.version >
</properties>
- @SpringBootApplication 注解是 Spring Boot 项目的核心注解,主要作用是开启Spring 自动配置,如果在 Application 类上去掉该注解,那么不会启动SpringBoot程序
- main 方法是一个标准的 Java 程序的 main 方法,主要作用是作为项目启动运行的入口
- @Controller 及 @ResponseBody 依然是我们之前的 Spring MVC,因为 Spring Boot的里面依然是使用我们的 Spring MVC + Spring + MyBatis 等框架
Spring Boot 的核心配置文件
Spring Boot 的核心配置文件用于配置 Spring Boot 程序,名字必须以 application 开始
核心配置格式
.properties 文件(默认采用该文件)
通过修改 application.properties 配置文件,在修改默认 tomcat 端口号及项目上下文件根
键值对的 properties 属性文件配置方式:
#设置内嵌 Tomcat 端口号
server.port=9090
#配置项目上下文根
server.servlet.context-path=/003-springboot-port-context-path
配置完毕之后,启动浏览器测试
页面显示结果
.yml 文件
yml 是一种 yaml 格式的配置文件,主要采用一定的空格、换行等格式排版进行配置。yaml 是一种直观的能够被计算机识别的的数据序列化格式,容易被人类阅读,yaml 类似于 xml,但是语法比 xml 简洁很多,值与前面的冒号配置项必须要有一个空格, yml 后缀也可以使用 yaml 后缀
注意:当两种格式配置文件同时存在,使用的是.properties 配置文件,为了演示 yml,可以先将其改名,重新运行 Application,查看启动的端口及上下文根
效果
多环境配置
在实际开发的过程中,我们的项目会经历很多的阶段(开发->测试->上线),每个阶段的配置也会不同,例如:端口、上下文根、数据库等,那么这个时候为了方便在不同的环境之间切换,SpringBoot 提供了多环境配置,具体步骤如下
为每个环境创建一个配置文件,命名必须以 application-环境标识.properties|yml
入门springboot-helloworld
关于SpringBoot简化Spring应用开发的一个框架;整个Spring技术栈的一个大整合-------------------------------------------开始新建第一个项目: CreateNewProject-----Maven--新建一个项目 Pom.xml中加入springboot启动的依赖 新建一个启动类,... 查看详情
springboot入门篇第1篇第一个spring-boot程序(多种搭建方式)(代码片段)
...我为什么,反正我就是可以这样运行!1.创建一个springboot项目可以 查看详情
springboot入门
SpringBoot入门一、第一个SpringBoot程序1.导入springBoot依赖<parent><groupId>org.springframework.boot</groupId><artifactId>spring-boot-starter-parent</artifactId><version>1.5.9.RE 查看详情
springboot入门及第一个案例(代码片段)
一:SpringBoot是什么springboot是对spring的缺点进行改善和优化,约定大于配置 开箱即用 没有代码生成也无需xml文件配置 可以修改属性值来满足需求1)SpringBoot使编码变简单2)SpringBoot使配置变简单3)SpringBoot使部署变简... 查看详情
springboot(入门)
使用IDEA创建SpringBoot: 注意:JavaVersion要选8以上。然后按步骤下一步,创建项目时是需要联网的。好了,我们的第一个SpringBoot项目就诞生了。application.properties是主要文件!可以简单的配置一下数据源:#设置服务端口号server.po... 查看详情
第01课:springboot入门(代码片段)
什么是SpringBootSpringBoot是由Pivotal团队提供的基于Spring的全新框架,其设计目的是为了简化Spring应用的搭建和开发过程。该框架遵循“约定大于配置”原则,采用特定的方式进行配置,从而使开发者无需定义大量的XML配... 查看详情
springboot入门到精通-spring的注解编程(代码片段)
SpringBoot入门到精通系列SpringBoot入门到精通-Spring的注解编程(一)SpringBoot入门到精通-SpringBoot入门(二)SpringBoot入门到精通-Spring的基本使用(三)SpringBoot入门到精通-SpringBoot集成SSM(四)前言SpringBoot并不是一个新技术了,但是我发现... 查看详情
springboot基础入门
简介官网:https://spring.io/projects/spring-bootSpringBoot是由Pivotal团队提供的全新框架,其设计目的是用来简化Spring应用的初始搭建以及开发过程。SpringBoot不是Spring官方的框架模式,而是一个团队在Spring4.0版本上二次开发并开... 查看详情
springboot入门
一,SpringBoot 1,如果使用Spring开发一个"HelloWorld"的web应用:?创建一个web项目并且导入相关jar包。SpringMVCServlet?创建一个web.xml?编写一个控制类(Controller)?需要一个部署web应用的服务器如tomcat2,SpringBoot特点:?SpringBoot设计目的是... 查看详情
springboot入门
...生态系统提供了一种固定的、约定优于配置风格的框架。SpringBoot具有如下特性:为基于Spring的开发提供更快的入门体验开箱即用,没有代 查看详情
springboot学习笔记-1第一个springboot示例
springboot是一个微框架,其设计的目的是为了简化spring框架的搭建和配置过程.从而使开发人员不再需要定义样板化的配置.下面是springboot的入门案例:它演示了利用springboot省去配置文件,然后通过运行Java程序,使得内置在springboot... 查看详情
springboot入门--快速搭建一个springboot框架
原文出处 前言在开始之前先简单介绍一下springboot,springboot作为一个微框架,它本身并不提供Spring框架的核心特性以及扩展功能,只是用于快速、敏捷地开发新一代基于Spring框架的应用程序,总的来说springboot不是为了要替代... 查看详情
springboot最佳实践快速入门
一、关于SpringBoot在开始了解SpringBoot之前,我们需要先了解一下Spring,因为SpringBoot的诞生和Spring是息息相关的,SpringBoot是Spring发展到一定程度的一个产物,但并不是Spring的替代品,SpringBoot是为了让程序员更好的使用Spring。说到... 查看详情
springboot入门--介绍和第一个例子
.../www.cnblogs.com/junyang/p/8151802.html“越来越多的企业选择使用springboot开发系统,springboot牛在什么地方?难不难学?心动不如行动,让我们一起开始学习吧!”使用Springboot,可以轻松的创建独立运行的程序,非常容易构建独立的服务... 查看详情
springboot快速入门
...堆反复黏贴的配置有一些厌烦?那么您就不妨来试试使用SpringBoot来让你更易上手,更简单快捷地构建Spring应用!SpringBoot让我们的Spring应用变的更轻量化。比如:你可以仅仅依靠一个Java类来运行一个Spring引用。你也可以打包你的... 查看详情
springboot入门
一、SpringBoot入门1、SpringBoot简介简化Spring应用开发的一个框架;整个Spring技术栈的一个大整合;J2EE开发的一站式解决方案;2、微服务2014,martinfowler微服务:架构风格(服务微化)一个应用应该是一组小型服务;可以通过Http的... 查看详情
springboot入门
一、SpringBoot入门1、SpringBoot简介简化Spring应用开发的一个框架;整个Spring技术栈的一个大整合;J2EE开发的一站式解决方案;2、微服务2014,martinfowler微服务:架构风格(服务微化)一个应用应该是一组小型服务;可以通过HTTP的... 查看详情
springboot入门
一、SpringBoot入门1、SpringBoot简介简化Spring应用开发的一个框架;整个Spring技术栈的一个大整合;J2EE开发的一站式解决方案;2、微服务2014,martinfowler微服务:架构风格(服务微化)一个应用应该是一组小型服务;可以通过HTTP的... 查看详情