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

2017网站风格青岛百度推广优化怎么做的

2017网站风格,青岛百度推广优化怎么做的,电子商务网站建设与管理试题,WordPress公众号主题使用 cursor 进行老项目更新为 springboot 的 web 项目,发生了奇怪的问题,就是 html 文件访问正常,但是静态文件就是 404 检查了各种配置,各种比较,各种调试,最后放弃时候,清理没用的配置文件&…

使用 cursor 进行老项目更新为 springboot 的 web 项目,发生了奇怪的问题,就是 html 文件访问正常,但是静态文件就是 404

检查了各种配置,各种比较,各种调试,最后放弃时候,清理没用的配置文件,发现了一个老的配置类

@Configuration
public class DateTimeConfig extends WebMvcConfigurationSupport {Logger logger = LoggerFactory.getLogger(DateTimeConfig.class);@Beanpublic FormattingConversionService mvcConversionService() {logger.info("mvcConversionService 执行了");DefaultFormattingConversionService conversionService = new DefaultFormattingConversionService(false);DateTimeFormatterRegistrar dateTimeRegistrar = new DateTimeFormatterRegistrar();dateTimeRegistrar.setDateFormatter(DateTimeFormatter.ofPattern("yyyy-MM-dd"));dateTimeRegistrar.setDateTimeFormatter(DateTimeFormatter.ofPattern("yyyy-MM-dd HH:mm:ss"));dateTimeRegistrar.registerFormatters(conversionService);DateFormatterRegistrar dateRegistrar = new DateFormatterRegistrar();dateRegistrar.setFormatter(new DateFormatter("yyyy-MM-dd"));dateRegistrar.registerFormatters(conversionService);return conversionService;}
}

WebMvcConfigurationSupport 替换为 WebMvcConfigurerAdapter 解决了问题,原因在于两者在 Spring MVC 中的 行为差异配置优先级。以下是详细分析:


1. 行为差异

特性WebMvcConfigurationSupportWebMvcConfigurerAdapter
作用完全覆盖 Spring MVC 默认配置扩展 Spring MVC 默认配置
影响范围全局配置,优先级最高局部配置,优先级较低
推荐使用场景需要完全自定义 MVC 配置仅需扩展默认配置

2. 问题根源

使用 WebMvcConfigurationSupport 的问题
  • 覆盖默认配置:继承 WebMvcConfigurationSupport完全禁用 Spring Boot 的自动配置(如静态资源处理、视图解析器等)。
  • 静态资源失效:默认的静态资源路径(classpath:/static/)会被覆盖,导致资源无法访问。
使用 WebMvcConfigurerAdapter 的优势
  • 扩展默认配置WebMvcConfigurerAdapter扩展 Spring MVC 配置,不会覆盖默认行为。
  • 保留自动配置:Spring Boot 的自动配置(如静态资源处理)仍然生效。

3. 解决方案

推荐使用 WebMvcConfigurer

WebMvcConfigurerAdapter 已被标记为 @Deprecated,建议直接实现 WebMvcConfigurer 接口:

@Configuration
public class WebConfig implements WebMvcConfigurer {@Overridepublic void addResourceHandlers(ResourceHandlerRegistry registry) {registry.addResourceHandler("/plugins/**").addResourceLocations("classpath:/static/plugins/").setCachePeriod(0);}
}
关键配置对比
配置项WebMvcConfigurationSupportWebMvcConfigurer
静态资源处理需手动配置所有资源路径仅需扩展默认配置
视图解析器需手动配置自动配置 + 扩展
拦截器需手动注册自动配置 + 扩展

4. 验证步骤

  1. 检查静态资源路径

    jar -tvf target/*.jar | grep "mdui.min.css"
    # 正确输出:
    # BOOT-INF/classes/static/plugins/mdui/css/mdui.min.css
    
  2. 访问资源URL

    curl -v http://localhost:8080/plugins/mdui/css/mdui.min.css
    # 预期响应:
    # HTTP/1.1 200
    # Content-Type: text/css
    
  3. 查看资源加载日志
    application.yml 中开启调试日志:

    logging:level:org.springframework.web: DEBUG
    

    正常日志

    DEBUG o.s.w.s.r.ResourceHttpRequestHandler - Resource found: class path resource [static/plugins/mdui/css/mdui.min.css]
    
  • 优化后的代码
@Configuration
public class DateTimeConfig implements WebMvcConfigurer {private static final Logger logger = LoggerFactory.getLogger(DateTimeConfig.class);@Overridepublic void addFormatters(FormatterRegistry registry) {logger.info("DateTimeConfig: 注册自定义日期时间格式化器");// 注册 Java 8 日期时间格式化器DateTimeFormatterRegistrar dateTimeRegistrar = new DateTimeFormatterRegistrar();dateTimeRegistrar.setDateFormatter(DateTimeFormatter.ofPattern("yyyy-MM-dd"));dateTimeRegistrar.setDateTimeFormatter(DateTimeFormatter.ofPattern("yyyy-MM-dd HH:mm:ss"));dateTimeRegistrar.registerFormatters(registry);// 注册传统日期格式化器DateFormatterRegistrar dateRegistrar = new DateFormatterRegistrar();dateRegistrar.setFormatter(new DateFormatter("yyyy-MM-dd"));dateRegistrar.registerFormatters(registry);}
}

5. 总结

  • WebMvcConfigurationSupport:适合需要 完全自定义 MVC 配置的场景,但会 覆盖默认行为
  • WebMvcConfigurer:适合 扩展默认配置,保留 Spring Boot 的自动配置能力。

通过替换为 WebMvcConfigurer,静态资源处理得以保留,问题自然解决。

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

相关文章:

  • 营销型网站制作培训多少钱seo综合查询是什么意思
  • 制作一个链接网站google store
  • 用ps做网站尺寸盐酸达泊西汀片是治疗什么的药物
  • 超轻粘土做动漫网站长沙网站seo分析
  • h5网站开发是什么意思b站推广费用一般多少
  • 网站源码编辑软件黄页88网站推广方案
  • 阿里云怎么做淘宝客网站曲靖seo建站
  • 开个做网站的公司深圳最好的外贸seo培训
  • 简述网站开发基本流程网络优化培训要多少钱
  • 西宁做网站的公司百度问问
  • 福州营销型网站建设价格2345网址导航用户中心
  • 郑州网站建设企业渠道推广费用咨询
  • 辽宁做网站临沂色度广告有限公司
  • 网站建设制作一个网站的费用排名
  • 做公司网站需要了解哪些东西百度关键词竞价排名
  • 手机wap网站制作营业推广怎么写
  • odoo网站建设百度推广技巧方法
  • 网站查询空间商手机百度网盘下载慢怎么解决
  • 怎么做网站广告古董优化设计答案六年级上册
  • 中小型网站建设郑州seo排名工具
  • 网盟推广图片郑州网站优化
  • 常宁市住房城乡建设委官方网站南宁seo推广公司
  • 玩具网站建设方案百度公司推广
  • 做网站需要具备的基础条件网络推广接单平台
  • 免费做网站公司ydwzjs产品质量推广营销语
  • flask 网站开发百度人工服务电话
  • 织梦 网站栏目管理广州营销推广
  • 平价网站建设google中文搜索引擎入口
  • asp大型网站开发网站注册地址查询
  • 手机网站一年费用吗谷歌优化排名公司