SpringMVC与SpringBoot
程序开发
2023-09-04 15:19:03
文章目录
一、Spring MVC
1.Spring的运行原理
二、Spring MVC组件
1. 前端控制器(DispatchServlet)
- 无需开发,由Spring框架提供
- SpringMVC的入口函数,接收请求,响应请求,相当于转发器,有了DispatchServlet减少其他组件之间的耦合度,用户请求到达前端控制器,相当于MVC中的Controller,是整个流程控制的中心,由它调用其他组件处理用户请求,降低组件间的耦合度。
2.处理器映射器(HandlerMapping)
- 不需要开发,由框架提供
- 根据URL查找Handler,HandlerMapping负责根据用户请求找到Handler处理器(Controller),SpringMVC中提供了不同的映射器实现的映射方式,如:配置文件方式,实现接口方式,注解方式
3.处理器适配器(HandlerAdapter)
- 不需要开发,由框架提供
- 按照特定规则(HandlerAdapter要求的规则)去执行Handler通过HandlerAdapter对处理器进行执行,是适配器模式的应用,通过扩展适配器可以对更多的类型的处理器进行执行。
4.处理器(Handler)
- 需要开发人员开发
- 真正执行Handler的是处理器,处理器是对具体的用户请求进行处理,由于Handler涉及到具体的用户业务请求,所以一般情况下是需要开发人员根据业务需求开发的Handler
5.视图解析器(ViewResolver)
- 不需要开发,由框架提供
- 进行试图解析,根据逻辑视图名解析成真正的视图View,viewResolver负责将处理结果生成View视图,ViewResolver根据逻辑视图名解析成真正物理视图名即具体的以页面地址,在生成View视图对象,最后对View视图进行渲染将处理结果通过页面展示给用户。
6.视图(View)
- 需要开发人员进行开发
- View是一个接口,实现类支持不同的View类型,
- SpringMVC框架提供了很多View视图类型,包含jspView,FreeMarkView,pdfView等,一般情况下需要通过页面标签或者页面模板技术将模板数据展示给用户,需要开发人员根据业务开发具体的页面
三、SpringMVC框架
- 传统的模型层被拆分为了业务层(Service)和数据访问层(DAO,Data Access Object),在Service下可以通过Spring的声明式事务操作数据访问层。
- 特点
- 结构松散,几乎可以在Sring MVC中使用各类视图
- 松耦合,各个模块分离
- 与Spring无缝集成
- 架构
- SpringMVC是属于Spring的一个模块
- SpringMVC和Spring无需通过中间整合增进行整合
- Spring是一个基于MVC的Web框架
四、SpringMVC的使用
- 创建web项目
五、SpringBoot框架
1.springBoot
- SpringBoot是由spring框架延伸出来的
- SpringBoot是一个快速开发框架,可以迅速搭建出一套基于SpringBoot框架体系的应用
- SpringBoot开启各种自动装配,从而简化代码开发,不需要编写各种配置文件,只需要引入相关的依赖就可以迅速搭建一个应用
- 优势
2.设置SpringBoot的parent
- SpringBoot项目需要首项引入parent
org.springframework.boot spring-boot-starter-parent 1.5.2.RELEASE
- springBoot的项目必须先将parent设置为SpringBoot的parent,该parent包含了大量默认的配置,大大简化我们的开发
3.导入SpringBoot的Web的支持
org.sprngframework.boot spring-boot-starter-web
4.编写SpringBoot的应用
@Controller
public class helloController{@RequestMapping("/hello")@ResponseBodypublic String hello(){return "hello";}
}
5.编写启动类
- @SpringBootApplication是SpringBoot的核心注解,主要目的开始装配main方法的一个应用,直接是使用SpringApplication.run()来启动SpringBoot应用
@SpringBootApplication
public class HelloApplication{public static void main(String[] args){SpringApplication.run(HelloApplication.class,args);}
}
6.测试运行
标签:
相关文章
-
无相关信息