开发者社区> 问答> 正文

spring mvc 为什么要以servlet为入口 ?

spring mvc 为什么要以servlet为入口 ?

展开
收起
a123456678 2016-03-17 15:00:02 2623 0
3 条回答
写回答
取消 提交回答
  • 相同的优化程度,相同的业务下,单以执行效率上说,servlet,没反射没那么多层次方法调用。

    2019-07-17 19:05:26
    赞同 展开评论 打赏
  • 个人理解。
    MVC中的C表示控制器,每个MVC框架都需要一个入口类接管所有Web请求,即MVC中的C。我个人认为这个入口类不一定非得是Servlet,比如WebX使用的就是Filter。如在web.xml中的配置代码如下:

    <filter>
        <filter-name>webx</filter-name>
        <filter-class>com.alibaba.citrus.webx.servlet.WebxFrameworkFilter
        </filter-class>
        <init-param>
            <param-name>excludes</param-name>
            <param-value>load.htm</param-value>
        </init-param>
    </filter>
    
    <filter-mapping>
        <filter-name>webx</filter-name>
        <url-pattern>/*</url-pattern>
    </filter-mapping>
    2019-07-17 19:05:26
    赞同 展开评论 打赏
  • Servlet才能保证他在最内层处理,外面设置的Filter都能起效。

    如果改成Filter实现,那么就会存在Filter嵌套顺序的问题

    2019-07-17 19:05:26
    赞同 展开评论 打赏
问答排行榜
最热
最新

相关电子书

更多
workshop专场-微服务专场-开发者动手实践营-微服务-Spring Cloud Alibaba 微服务全家桶体验 立即下载
云栖社区特邀专家徐雷Java Spring Boot开发实战系列课程(第20讲):经典面试题与阿里等名企内部招聘求职面试技巧 立即下载
微服务架构模式与原理Spring Cloud开发实战 立即下载

相关实验场景

更多