参考文章链接:http://c.biancheng.net/view/4625.html
声明:仅供学习笔记,不作他用。
目录
MVC框架
M:Model封装了应用程序的数据和一般他们会组成的POJO。
V:View是负责呈现模型数据和一般它生成的HTML输出,客户端的浏览器可以解释。
C:Controller负责处理用户的请求,并建立适当的模型,并把它传递给视图渲染。
Spring Boot框架
Spring->Spring Boot->Spring Cloud
1、什么是Spring Boot?
Spring Boot是Spring的一套快速配置脚手架,可以基于Spring Boot快速开发单个微服务。
2、什么是Spring Cloud?
Spring Cloud是一个基于Spring Boot实现的云应用开发工具。
3、Spring Boot与Spring Cloud的区别
Spring Boot专注于快速、方便集成单个个体;
Spring Cloud是关注全局的服务治理框架;
Spring Boot使用了默认大于配置的理念,很多集成方案已经为你选好,能不配置就不配置;
Spring Cloud的很大一部分是基于Spring Boot来实现的,他将Spring Boot开发的一个个单体微服务整合并管理起来,为各个微服务之间提供配置管理、服务发现、断路器、路由、微代理、事件总栈、全局锁、决策竞选、分布式会话等集成服务;
Spring Boot可以离开Spring Cloud独立使用开发项目,但是Spring Cloud离不开Spring Boot,属于依赖关系;
4、快速搭建一个SpringBoot应用
a、打开浏览器,输入http://start.spring.io/
b、填写项目信息
c、点击Generate下载项目
d、此时会得到一个SpringBoot的启动类
package com.example.demo;
import org.springframework.boot.SpringApplication;
import org.springframework.boot.autoconfigure.SpringBootApplication;
@SpringBootApplication //Annotation定义
public class DemoApplication {
public static void main(String[] args) {
SpringApplication.run(DemoApplication.class, args);//类定义
}
}
或者
package com.example.demo;
import org.springframework.boot.SpringApplication;
import org.springframework.boot.autoconfigure.SpringBootApplication;
@Configuration
@EnableAutoConfiguration
@ComponentScanpublic
class DemoApplication {
public static void main(String[] args) {
SpringApplication.run(DemoApplication.class, args);
}
}
5、Spring Boot的启动流程(run()方法执行流程)
a、收集各种条件和回调接口
通告started()
b、创建并准备Environment
通告EnvironmentPrepared()
c、创建并初始化ApplicationContext
通告ContextPrepared()
通告COntextLoader()
d、refresh ApplicationContext完成最终程序启动
执行CommandLineRunner
通告finished()
6、SpringApplication的各个扩展点
a、SpringApplicationRunListener
public interface SpringApplicationRunListener {
void started();
void environmentPrepared(ConfigurableEnvironment environment);
void contextPrepared(ConfigurableApplicationContext context);
void contextLoaded(ConfigurableApplicationContext context);
void finished(ConfigurableApplicationContext context, Throwable exception);
}
b、ApplicationListener
属于Spring原有概念,是Spring对java监听者模式的框架实现
c、ApplicationContextInitializer
属于Spring原有概念
d、CommandLineRunner
属于Spring Boot应用特定的回调接口