当前位置: 首页 > wzjs >正文

门户网站的定义汽车品牌推广策划方案

门户网站的定义,汽车品牌推广策划方案,做视频网站免费观看爱,做网站 需要什么样的服务器WebMvcConfigurer接口及其相关实现类的详细对比 WebMvcConfigurer是Spring MVC的核心接口,用于扩展和自定义Spring MVC的配置行为。以下是其相关实现类的对比分析: 1. WebMvcConfigurer 接口 作用:定义Spring MVC的扩展点,允许用…

WebMvcConfigurer接口及其相关实现类的详细对比

WebMvcConfigurer是Spring MVC的核心接口,用于扩展和自定义Spring MVC的配置行为。以下是其相关实现类的对比分析:


在这里插入图片描述

1. WebMvcConfigurer 接口
  • 作用:定义Spring MVC的扩展点,允许用户自定义以下配置:

    • 拦截器(addInterceptors
    • 视图控制器(addViewControllers
    • 静态资源处理(addResourceHandlers
    • 消息转换器(configureMessageConverters
    • 异常处理(extendExceptionResolvers
    • 路径匹配规则(configurePathMatch
    • 模板解析器(addArgumentResolvers/addReturnValueHandlers)等。
  • 实现方式

    • 直接实现接口:需覆盖所有方法(推荐使用Java 8+的默认方法)。
    • 继承适配器类:旧版通过WebMvcConfigurerAdapter实现(已过时)。

2. WebMvcConfigurerAdapter(已过时)
  • 作用:Spring Framework 4.x中提供的适配器类,实现了WebMvcConfigurer接口的所有方法,提供空实现,方便用户继承并覆盖需要的方法。
  • 适用版本:Spring Framework 4.x(在Spring 5.x中被移除)。
  • 状态已弃用,推荐直接实现WebMvcConfigurer接口(Java 8+的默认方法简化了实现)。

3. Spring Boot的实现类

Spring Boot通过以下类实现WebMvcConfigurer接口,提供默认配置:

3.1 WebMvcAutoConfiguration
  • 作用:Spring Boot的核心自动配置类,负责初始化Spring MVC的默认行为(如静态资源处理、视图解析器、拦截器等)。
  • 实现方式
    • 直接实现接口:通过内部类或直接实现WebMvcConfigurer接口的方法(如configurePathMatchaddInterceptors)。
    • Spring Boot 3.x变化:不再依赖WebMvcAutoConfigurationAdapter,直接整合配置逻辑到WebMvcAutoConfiguration中。
3.2 WebMvcAutoConfigurationAdapter(已移除)
  • 历史作用(Spring Boot 2.x):作为WebMvcAutoConfiguration的内部类,适配WebMvcConfigurer接口,提供默认配置(如拦截器、格式化器等)。
  • Spring Boot 3.x状态已移除,其功能被直接整合到WebMvcAutoConfiguration中。

4. 用户自定义的实现类

用户可通过以下方式自定义配置:

@Configuration
public class MyWebConfig implements WebMvcConfigurer {@Overridepublic void addInterceptors(InterceptorRegistry registry) {registry.addInterceptor(new MyInterceptor());}
}

对比表格

类/实现方式作用实现方式适用版本状态
WebMvcConfigurerSpring MVC的扩展接口,定义所有配置方法接口,需用户或框架实现Spring 4.x+存在(核心接口)
WebMvcConfigurerAdapter提供空实现的适配器类(方便继承)实现WebMvcConfigurer接口,所有方法默认为空实现Spring 4.x(已移除于5.x)已过时/移除
WebMvcAutoConfigurationSpring Boot的自动配置类,提供MVC的默认配置(静态资源、拦截器等)直接实现WebMvcConfigurer接口,整合配置逻辑Spring Boot 2.x+存在(核心自动配置)
WebMvcAutoConfigurationAdapter(Spring Boot 2.x)适配WebMvcConfigurer接口的中间类(整合默认配置)内部类,实现WebMvcConfigurer接口Spring Boot 2.x已移除于3.x
用户自定义类用户自定义扩展配置(如添加拦截器、视图控制器)实现WebMvcConfigurer接口或继承适配器类(不推荐)Spring 4.x+存在(用户自定义)

关键差异与注意事项

  1. 适配器类的演变

    • Spring 4.x:用户通过继承WebMvcConfigurerAdapter简化实现。
    • Spring 5.x+WebMvcConfigurerAdapter被移除,推荐直接实现接口(Java 8的默认方法简化了实现)。
    • Spring Boot 3.xWebMvcAutoConfigurationAdapter被移除,配置逻辑直接整合到WebMvcAutoConfiguration中。
  2. 用户自定义配置的优先级

    • Spring Boot会合并默认配置与用户自定义配置,通过@Order@Configuration的加载顺序控制优先级。
  3. 推荐实践

    • 直接实现接口:在Spring 5.x+中,直接实现WebMvcConfigurer接口并覆盖所需方法。
    • 避免使用适配器:优先使用Java 8的默认方法特性,避免过时的适配器类。

示例:自定义配置类

@Configuration
public class MyMvcConfig implements WebMvcConfigurer {// 覆盖需要的方法,其他方法默认实现由接口的默认方法提供@Overridepublic void addViewControllers(ViewControllerRegistry registry) {registry.addViewController("/home").setViewName("index");}
}

通过以上对比,可以清晰理解不同实现类的历史演变和当前Spring Boot 3.x中的最佳实践。

http://www.dtcms.com/wzjs/523769.html

相关文章:

  • 哪个网站做logo设计中国十大营销策划公司排名
  • 北京市建设工程交易服务平台历下区百度seo
  • 做分享衣服网站的初衷是什么意思重庆seo优化推广
  • 怎么做网站寄生虫上海网络推广
  • 小型培训机构网站开发毕业设计如何推广app更高效
  • dw做游戏网站代码网站营销软文
  • 禅城网站建设多少钱今天重大新闻头条新闻
  • 做网站主播要什么条件东莞seo外包平台
  • 网站建设包括哪些东莞seo快速排名
  • 网页设计怎么分析网站啊免费发布推广平台
  • 报网站开发培训班世界杯32强排名
  • 网站想要游览怎么做企业管理培训课程报名
  • 做pc端网站策划google网站搜索
  • 网络营销案例题百度seo优化教程
  • 网站的切图是谁来做网络营销课程培训机构
  • 网站热销榜怎么做百度关键词推广2元一天
  • 邢台网站建设平台网络服务商怎么咨询
  • 新疆政府网站建设情况宁波seo快速排名
  • wordpress功能以及使用seo云优化
  • 项目运营方案seo教程免费分享
  • java 动态网站开发网络服务商
  • 东莞大朗疫情最新情况论述搜索引擎优化的具体措施
  • 做外贸网站咨询百度高级搜索功能
  • 微博带动网站做排名百度关键词优化软件排名
  • 汽油最新价格苏州网站优化排名推广
  • 怎样自己做免费的网站域名解析在线查询
  • 服装效果图网站武汉软件测试培训机构排名
  • 赌博网站怎么搭建宁波网站建设公司哪家好
  • 谷歌排名网站优化关键词搜索查询
  • 最便宜的网站建设阿里巴巴怎么优化关键词排名