感谢你的路过,希望学生的笔记能给你一点微不足道的参考(2/100)
Java基础思维导图,完整Java体系的链接
1. springboot概念
在这一部分,我们主要了解以下3个问题:
什么是SpringBoot
为什么要学习SpringBoot
SpringBoot的特点
1.1什么是SpringBoot?
springboot是spring快速开发脚手架,通过约定大于配置的方式,快速构建和启动spring项目
1.2为什么要学习SpringBoot
spring的缺点:
复杂的配置
项目各种配置是开发时的损耗, 写配置挤占了写应用程序逻辑的时间。
混乱的依赖管理。
项目的依赖管理非常的繁琐。决定项目里要用哪些库就已经够让人头痛的了,你还要知道这些库的哪个版本和其他库不会有冲突,这是一个棘手的问题。并且,一旦选错了依赖的版本,随之而来的就是各种的不兼容的bug。
spring boot 可以解决上面2个问题
1.3SpringBoot的特点
Spring Boot 特点:
快速开发spring应用的框架
内嵌tomcat和jetty容器,不需要单独安装容器,jar包直接发布一个web应用
简化maven配置,parent这种方式,一站式引入需要的各种依赖
基于注解的零配置思想
和各种流行框架,spring web mvc,mybatis,spring cloud无缝整合
更多细节,大家可以到官网查看。
总结
spring boot 是spring快速开发脚手架,通过约定大于配置,优化了混乱的依赖管理,和复杂的配置,让我们用java -jar方式,运行启动java web项目。
2. 入门案例
需求:创建HelloController,在页面中打印hello spring boot…
创建工程
我们先新建一个空的工程
工程名为project:
设置jdk版本为1.8:
新建一个module:
使用maven来构建:
然后填写项目坐标:
目录结构:
项目结构:
添加依赖
SpringBoot提供了一个名为spring-boot-starter-parent的构件,里面已经对各种常用依赖(并非全部)的版本进行了管理,我们的项目需要以这个项目为父工程,这样我们就不用操心依赖的版本问题了,需要什么依赖,直接引入坐标即可!
添加父工程坐标
<parent>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-parent</artifactId>
<version>2.0.0.RELEASE</version>
</parent>
添加web启动器
为了让SpringBoot帮我们完成各种自动配置,我们必须引入SpringBoot提供的自动配置依赖,我们称为 启动器 。因为我们是web项目,这里我们引入web启动器:
<dependencies>
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-web</artifactId>
</dependency>
</dependencies>
需要注意的是,我们并没有在这里指定版本信息。因为SpringBoot的父工程已经对版本进行了管理了。这个时候,我们会发现项目中多出了大量的依赖:
这些都是SpringBoot根据spring-boot-starter-web这个依赖自动引入的,而且所有的版本都已经管理好,不会出现冲突。
管理jdk版本
默认情况下,maven工程的jdk版本是1.5,而我们开发使用的是1.8,因此这里我们需要修改jdk版本,只需要简单的添加以下属性即可:
<properties>
<java.version>1.8</java.version>
</properties>
完整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
http://maven.apache.org/xsd/maven-4.0.0.xsd">
<modelVersion>4.0.0