Spring Boot 是什么?
Spring Boot是由Pivotal团队提供的全新框架,其设计目的是用来简化Spring应用初始搭建以及开发过程。该框架使用了特定的方式来进行配置,从而使开发人员不再需要定义样板化的配置。Spring Boot 其实就是一个整合很多可插拔的组件(框架),内嵌了使用工具(比如内嵌了Tomcat、Jetty等),方便开发人员
为了简化SPring配置而产生的一个快速搭建和开发的一个框架。
快速开发框架
- 快到什么程度。我只需要几分钟时间就能搭建出一个Web应用.
- 使用SpringFramework 开发企业级项目,会产生大量的配置文件.
- Spring Boot 框架本身,在Spring 基础上做了二次开发 ,使用了大量的注解去实现Spring 的功能,极大的减少了SPring的配置文件与代码量.
Spring 是怎么产生的?它的产生是为了解决什么问题的?
简化我们J2EE企业级开发的复杂度而创建的,让我使用Java开发J2ee项目更快速更简单。它的 interface21 使用了Java中的高级特性,反射,与面向接口编程。让我们开发人员更专注于业务逻辑的实现,底层开发代码交由Spring去管理.
配置优于编码的思想。
Spring 框架技术流行后,我们使用Spring开发J2ee项目会产生大量配置文件。配置文件多,不方便维护.
Spring Boot 约定优于配置.
Spring Boot 怎么运行的?
先看看Jsp+servlet 的项目是怎么运行的
-
编写项目源码
-
编译成war (ant )
-
发布到 Web应用容器(Tomcat,Jboss)
-
启动容器(tomcat )web会在指定的端口监听(8080)
-
访问8080
项目.war –>发布到 Web应用容器(Tomcat,Jboss)
SpringBoot Web项目的开发与运行,它快在哪里?
- 创建一个项目
- 写上一个业务处理类,在业务处理类上加上一个注解@SpringBootApplicaion
- 运行,我们就可以通过指定端口去访问我们的项目.
SpringBoot 内嵌了Web容器(tomcat ,jetty)
@SpringBootApplication又是啥?
它是一个SpringBoot提供的一个组合注解,@SpringBootApplication 集成了整个Spring 容器. ApplicationContext
springboot对于Spring 的支持
-
在Spring框架的基础上做了一层二次封装,最重要的特点就是Spring Boot框架定义了一些新的注解来实行一些Spring注解的组合,而Spring注解则是基于JDK1.5+后的注解功能的支持来完成的。
-
SpringBoot 对于 SPring做了大量的封装。极大的减少了Spring的配置,简化了Spring的使用.
-
对于WEB的支持
-
内嵌WEB应用容器,tomcat ,jetty 等
-
对于其他框架的快速开发支持
-
提供约定的快速开始依赖
-
通常的格式为:-starter-
SpringBoot 编写了一个SpringBoot-xxxx-a-starter-xxx的Maven依赖.
A –B–C
在Java 开发过程中,我们要使用一个框架,第一步我们会要做什么?
导入框架的Jar
A --B–C
一个框架会有自己的核心源码,又引入了其他框架的jar
我们要自己去找A框架需要的Jar 包一起导入到项目中。
Spring Boot 特点
- 搭建项目快,几秒钟就可以搭建完成;熟练的话,一分钟就可以搭建一个Web应用
- 让测试变的简单,内置了JUnit、Spring Boot Test等多种测试框架,方便测试;
- Spring Boot让配置变的简单,Spring Boot的核心理念:约定大约配置,约定了某种命名规范,可以不用配置,就可以完成功能开发,比如模型和表名一致就可以不用配置,直接进行CRUD(增删改查)的操作,只有表名和模型不一致的时候,配置名称即可;
- 内嵌容器,省去了配置Tomcat的繁琐;
- 方便监控,使用Spring Boot Actuator组件提供了应用的系统监控,可以查看应用配置的详细信息;
- 还集成了很多的框架快速开发的约定。
Spring Boot 怎么创建和使用?
创建SpringBoot 的项目
选择Spring Initilaizr 单选按钮选择默认 default: https//start.spring.io 加载Springboot 的模版配置,这一步需要网络支持.
maven 识别一个Jar
- GAV 属性(组织机构、特性、版本号)
通常在项目开发中都会有两个版本
-
0.0.1-SNAPSHOT 快照版本,测试版本
-
.RELESE 发布版本
运行
什么是Web项目?
Servlet +jsp 就是一个 最最原始古老的Java Web应用
动态可交互的网页应用系统 项目的结构模式BS架构模式( 浏览器+服务器),CS架构模式(客户端+服务器)
web应用的交互模式
请求与响应模式
HttpRequest 处理客户端请求
HttpResponse 处理服务端返回
浏览器端发起请求 —>服务器接收请求 –>业务逻辑–>操作DB ––>返回数据返回给浏览器显示<–服务器响应<–给业务逻辑层
SpringMVC