实现Web MVC

Last updated: ... / Reads: 33654 Edit

现在,我们已经实现了IoC容器、AOP、JdbcTemplate和声明式事务,离一个完整的框架只差一个Web MVC了。

我们先看看Spring的Web MVC主要提供了哪些组件和API支持:

  1. 一个DispatcherServlet作为核心处理组件,接收所有URL请求,然后按MVC规则转发;
  2. 基于@Controller注解的URL控制器,由应用程序提供,Spring负责解析规则;
  3. 提供ViewResolver,将应用程序的Controller处理后的结果进行渲染,给浏览器返回页面;
  4. 基于@RestController注解的REST处理机制,由应用程序提供,Spring负责将输入输出变为JSON格式;
  5. 多种拦截器和异常处理器等。

Spring的Web MVC功能十分强大,涉及到的内容也非常广。相比之下,Summer Framework的Web MVC必然要聚焦在核心组件上:

Spring FrameworkSummer Framework
DispatcherServlet支持支持
@Controller注解支持支持
@RestController注解支持支持
ViewResolver支持支持
HandlerInterceptor支持不支持
Exception Handler支持不支持
CORS支持不支持
异步处理支持不支持
WebSocket支持不支持

不过,Spring Framework的Web MVC模块对Filter支持有限,要想愉快地使用Filter,最好通过Spring Boot提供的FilterRegistrationBean,Summer Framework为了便于应用程序开发自己的Filter,直接支持FilterRegistrationBean

下面开始正式开发Summer Framework的Web MVC模块。


Comments

Make a comment