python购物网站开发流程佛山多语网站制作

张小明 2026/1/11 22:25:45
python购物网站开发流程,佛山多语网站制作,有含义的公司名,跑腿公司怎么做网站Spring Boot 与 Spring MVC 的整合并非新增功能#xff0c;而是 Spring Boot 基于约定大于配置的思想#xff0c;对 Spring MVC 核心组件实现了开箱即用的自动配置。其本质是通过 spring-boot-starter-web 启动器封装 Spring MVC 核心依赖和自动配置类#xff0c;让开发者无…Spring Boot 与 Spring MVC 的整合并非新增功能而是 Spring Boot 基于约定大于配置的思想对 Spring MVC 核心组件实现了开箱即用的自动配置。其本质是通过 spring-boot-starter-web 启动器封装 Spring MVC 核心依赖和自动配置类让开发者无需手动配置 DispatcherServlet、视图解析器、消息转换器等核心组件能直接快速使用 Spring MVC 的所有核心能力同时仍保留完全的自定义扩展能力。SpringMVC自动管理在 pom.xml 中引入 spring-boot-starter-web 启动器dependency groupIdorg.springframework.boot/groupId artifactIdspring-boot-starter-web/artifactId /dependency这个启动器不仅封装了 Spring MVC 核心依赖还包含了内嵌 Tomcat、JSON 解析、Servlet 等依赖是自动装配的依赖基础开启自动装配开关SpringBootApplication public class MvcDemoApplication { public static void main(String[] args) { SpringApplication.run(MvcDemoApplication.class, args); } }启动类上的 SpringBootApplication 注解包含 EnableAutoConfiguration 注解这个注解会触发 Spring Boot 扫描并加载所有预设的自动配置类Spring Boot 对 Spring MVC 的自动装配核心由 org.springframework.boot.autoconfigure.web.servlet.WebMvcAutoConfiguration 类实现WebMvcAutoConfiguration 类这是典型的条件化配置仅当应用为 Servlet 类型的 Web 应用、项目引入 Spring MVC 核心依赖且用户未自定义 WebMvcConfigurationSupport 类即未完全接管 MVC 底层配置时该配置类才会生效。且生效时它会先等待 DispatcherServlet 和参数校验的自动配置类加载完成再以高优先级加载自身确保 Spring MVC 核心组件的自动注册安全且有序。自动装配的核心内容WebMvcAutoConfiguration 类会自动向 Spring 容器注册 / 初始化 Spring MVC 核心组件覆盖请求处理全流程视图解析器自动整合容器中所有的视图解析器解析视图从容器中获取所有的视图解析器静态资源访问详见【Springboot】热部署和静态资源映射规则消息转换和格式化Formatter 格式化器日期格式化添加格式化器自己添加的格式化转换器只需放在容器中即可HttpMessageConverters 消息转化器从容器中获取所有的 HttpMessageConverters核心配置项Spring Boot 提供的核心配置项是简化 Spring MVC 配置的高效捷径。其本质在于将 Spring MVC 底层繁杂的配置逻辑封装为可直接配置的属性项开发人员只需根据实际业务场景的需求调整这些配置项的取值即可快速适配各类业务场景无需编写复杂的底层配置代码。举例把静态资源访问路径从默认的 /** 改成 /static/**主配置文件 application.yml 中添加如下内容扩展 Spring MVC若核心配置项无法满足定制需求可通过实现 WebMvcConfigurer 接口进行编程式配置。在 Spring Boot 中扩展 Spring MVC 的核心是实现 WebMvcConfigurer 接口作为 Spring 原生提供的功能扩展接口它支持在保留 Spring Boot 自动配置的前提下按需定制 Spring MVC 的各类核心功能如拦截器、静态资源规则、视图解析器等。WebMvcConfigurer 接口源码如下编程式配置扩展 Spring MVC 的核心原则配置类上必须加 Configuration 注解声明为配置类配置类上不能加 EnableWebMvc 注解否则会禁用 SpringBoot 的 MVC 自动配置所有组件需手动配置扩展逻辑通过重写 WebMvcConfigurer 的默认方法实现Spring Boot 会自动识别并整合这些配置。在容器中注册视图控制器示例创建一个 MyMVCConfig 实现 WebMvcConfigurer 接口实现 addViewControllers 方法完成通过 /login 访问转发到 success.html 的工作代码如下Configuration public class MyMVCCofnig implements WebMvcConfigurer{ Override public void addViewControllers(ViewControllerRegistry registry) { registry.addViewController(/login).setViewName(success); } }自定义静态资源路径Override public void addResourceHandlers(ResourceHandlerRegistry registry) { registry.addResourceHandler(/static/**) .addResourceLocations(classpath:/my-static/); }例如访问 http://localhost:8080/static/test.js 会映射到 classpath:/my-static/test.js注册格式化器注册格式化器用于解决前端日期字符串与后端 Date 类型参数自动绑定问题当然通过 application.properties 配置方式也可以实现。Override public void addFormatters(FormatterRegistry registry) { registry.addFormatter(new FormatterDate() { Override public String print(Date date, Locale locale) { return null; } Override public Date parse(String s, Locale locale) throws ParseException { return new SimpleDateFormat(yyyy-MM-dd).parse(s); } }); }举例实现效果当前端通过表单 / JSON 传入 {“createTime”: “2025-12-03”}后端 Controller 方法参数为 public void add(RequestParam Date createTime)Spring 会自动调用上面注册的 Formatter将 String 类型的 2025-12-03 解析为 Date 对象。消息转换器扩展fastjson在 pom.xml 中引入 fastjsondependency groupIdcom.alibaba/groupId artifactIdfastjson/artifactId version1.2.47/version /dependency配置消息转换器添加 fastjsonSpring 集成 fastjson 处理 JSON 转换的全局配置Override public void configureMessageConverters(ListHttpMessageConverter? converters) { FastJsonHttpMessageConverter fc new FastJsonHttpMessageConverter(); FastJsonConfig fastJsonConfig new FastJsonConfig(); fastJsonConfig.setSerializerFeatures(SerializerFeature.PrettyFormat); fc.setFastJsonConfig(fastJsonConfig); converters.add(fc); }当这个配置生效后Spring MVC 的 JSON 处理会完全交给 fastjson返回的 JSON 会是格式化后的结构在实体类上可以继续控制使用 JSONField 注解此注解是对全局配置的局部覆盖public class User{ JSONField(format yyyy-MM-dd) private Date date; }指定 date 字段在 JSON 序列化Java 对象 → JSON 字符串和反序列化JSON 字符串 → Java 对象时的日期格式。拦截器创建拦截器public class MyInterceptor implements HandlerInterceptor { Override public boolean preHandle(HttpServletRequest request, HttpServletResponse response, Object handler) throws Exception { System.out.println(前置拦截); return true; } Override public void postHandle(HttpServletRequest request, HttpServletResponse response, Object handler, ModelAndView modelAndView) throws Exception { System.out.println(后置拦截); } Override public void afterCompletion(HttpServletRequest request, HttpServletResponse response, Object handler, Exception ex) throws Exception { System.out.println(最终拦截); } }拦截器注册Override public void addInterceptors(InterceptorRegistry registry) { registry.addInterceptor(new MyInterceptor()) .addPathPatterns(/**) .excludePathPatterns(/hello2); }addPathPatterns指定拦截的路径支持通配符excludePathPatterns指定排除的路径必须包含静态资源、错误页面等否则会拦截这些默认资源
版权声明:本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!

某网站突然不能浏览了wordpress 插件制作

SDR三问:采样率够吗?带宽看得清吗?混叠跑出来了吗?你有没有在用RTL-SDR扫频时,突然发现某个频段冒出一对对称的“幽灵信号”?或者想抓一段Wi-Fi数据,结果软件直接报错“采样率不足”&#xff1f…

张小明 2026/1/10 7:26:17 网站建设

网站建设与运营公司市场开方案有免费做海报的网站吗

快速体验 打开 InsCode(快马)平台 https://www.inscode.net输入框内输入如下内容: 创建一个Python脚本,自动检测CUDA环境并处理cudaGetDeviceCount()错误。脚本应包含以下功能:1. 检查CUDA驱动和运行时版本是否匹配;2. 验证GPU设…

张小明 2026/1/9 16:41:26 网站建设

国际网站建设经验电子商务网站建设一体化教案

本文详细介绍了大模型训练的三大核心技术:预训练(海量无标注数据培养通用能力)、微调(专业数据优化特定任务)和蒸馏(大模型知识迁移至小模型)。文章通过生动比喻和具体实现方式,帮助…

张小明 2026/1/10 18:15:38 网站建设

单页网站排名优化网站建设目的是什么

还在为官方软件的强制联网和不必要的内容推送而烦恼吗?OmenSuperHub为您提供完全离线的暗影精灵笔记本性能优化解决方案。这款开源工具专注于硬件管理和性能调优,通过智能风扇控制和性能模式切换,让您的笔记本在最佳状态下运行,同…

张小明 2026/1/10 6:41:25 网站建设

免费手机网站制作wordpress登陆账号

frpc-desktop智能网络保活机制:告别断线困扰的内网穿透稳定方案 【免费下载链接】frpc-desktop 一个frpc桌面客户端 项目地址: https://gitcode.com/GitHub_Trending/fr/frpc-desktop frpc-desktop通过创新的智能网络保活机制,为内网穿透提供了前…

张小明 2026/1/6 22:59:51 网站建设

wordpress建好本地站怎么上传网站生成静态慢原因

YOLOFuse 结合 JavaScript 开发 Web 界面?可行性分析 在智能安防、夜间监控和自动驾驶等实际场景中,单一可见光摄像头在低光照或复杂气象条件下往往“力不从心”。例如,夜晚的街道上行人模糊不清,雾霾天气下车辆轮廓难以分辨——这…

张小明 2026/1/10 14:30:20 网站建设