WebMvcConfigurerAdapter 在springboot2.0及以上版本过时问题

WebMvcConfigurerAdapter已经过时,替代方案:
1 实现 WebMvcConfigurer 接口;
2 继承 WebMvcConfigurationSupport ; 但是需要注意的是继承这个类会导致 springboot 的自动配置功能失效,所以如果还需要使用springboot的自动配置功能则推荐使用第一种方案 ===================================================================================
模板文件中静态资源使用 thymeleaf标签问题
在模板文件中,对于如下链接:
<link href="asserts/css/bootstrap.min.css" rel="stylesheet">
建议配置成:
<link href="asserts/css/bootstrap.min.css" th:href="@{/webjars/bootstrap/4.0.0/css/bootstrap.css}" rel="stylesheet">
因为使用thymeleaf标签可以动态的适配我们的服务访问路径;
比如我们修改我们的服务访问路径为:
server.servlet.context-path=/fzy
的时候,我们重新访问应用的时候需要在访问的根路径中添加/fzy才能正常方位,而这时我们html中配置的上面的link链接不需要修改就可以正常使用,框架会在url中为我们添加上
修改后的配置路径:<link href="/fzy/webjars/bootstrap/4.0.0/css/bootstrap.css" rel="stylesheet">,红色字体为框架自动识别添加的
(http://localhost:8080修改为http://localhost:8080/fzy 才能正常访问) ==================================================================================
通过 return "redirect:/main.html"; 可以防止表单重复提交的问题,因为提交表单后通过main.html跳转到我们的主页面,所以进入主页面后反复刷新页面,刷新的是
main.html,所以可以防止重复提交表单
下面复习下dispatcher和redirect的区别:
1 redirect后地址栏是新的url(服务端根据逻辑,发送一个状态码,告诉浏览器重新请求新的地址.所以地址栏显示的是新的URL),dispatcher地址栏url不变;
2 redirect后,原页面的所有数据都将失效,在新页面里无法使用;而dispatcher可以继续使用原页面里的请求数据;
使用forward是服务跳转,浏览器不知道它所请求的具体资源来源,浏览器的地址栏不会变;
使用redirect,服务端根据逻辑,发送一个状态码,告诉浏览器重新去请求那个地址.所以地址栏显示的是新的URL。 在heml中引入js的时候需要注意,如果将js路径配置成行对路径:
<script type="text/javascript" src="asserts/js/jquery-3.2.1.slim.min.js"></script>
则从controller跳转到当前html的时候,会从html所在页面路径下查找对应src中配置的js,而我们一般是将js放在项目根路径下,所以跳转到hmtl后会导致对应的js找不到,所以
做好将src的路径配置为绝对路径


 

springboot学习(2)的更多相关文章

  1. springboot 学习资源推荐

    springboot 是什么?对于构建生产就绪的Spring应用程序有一个看法. Spring Boot优先于配置的惯例,旨在让您尽快启动和运行.(这是springboot的官方介绍) 我们为什么要学 ...

  2. Springboot学习记录1--概念介绍以及环境搭建

    摘要:springboot学习记录,环境搭建: 官方文档地址:https://docs.spring.io/spring-boot/docs/current-SNAPSHOT/reference/ht ...

  3. SpringBoot学习笔记

    SpringBoot个人感觉比SpringMVC还要好用的一个框架,很多注解配置可以非常灵活的在代码中运用起来: springBoot学习笔记: .一.aop: 新建一个类HttpAspect,类上添 ...

  4. springboot学习(一)——helloworld

    以下内容,如有问题,烦请指出,谢谢 springboot出来也很久了,以前零散地学习了不少,不过很长时间了都没有在实际中使用过了,忘了不少,因此要最近准备抽时间系统的学习积累下springboot,给 ...

  5. SpringBoot学习(3)-SpringBoot添加支持CORS跨域访问

    SpringBoot学习(3)-SpringBoot添加支持CORS跨域访问 https://blog.csdn.net/yft_android/article/details/80307672

  6. Springboot学习07-数据源Druid

    Springboot学习07-数据源Druid 关键字 Druid 前言 学习笔记 正文 1-Druid是什么 Druid是阿里巴巴开源平台上的一个项目,整个项目由数据库连接池.插件框架和SQL解析器 ...

  7. Springboot学习06-Spring AOP封装接口自定义校验

    Springboot学习06-Spring AOP封装接口自定义校验 关键字 BindingResult.Spring AOP.自定义注解.自定义异常处理.ConstraintValidator 前言 ...

  8. Springboot学习05-自定义错误页面完整分析

    Springboot学习06-自定义错误页面完整分析 前言 接着上一篇博客,继续分析Springboot错误页面问题 正文 1-自定义浏览器错误页面(只要将自己的错误页面放在指定的路径下即可) 1-1 ...

  9. Springboot学习04-默认错误页面加载机制源码分析

    Springboot学习04-默认错误页面加载机制源码分析 前沿 希望通过本文的学习,对错误页面的加载机制有这更神的理解 正文 1-Springboot错误页面展示 2-Springboot默认错误处 ...

  10. Springboot学习笔记(六)-配置化注入

    前言 前面写过一个Springboot学习笔记(一)-线程池的简化及使用,发现有个缺陷,打个比方,我这个线程池写在一个公用服务中,各项参数都定死了,现在有两个服务要调用它,一个服务的线程数通常很多,而 ...

随机推荐

  1. Android照片库选择图片裁剪闪退(兼容小米以及7.0以上机型)

    未经允许,禁止

  2. keras 保存训练的最佳模型

    转自:https://anifacc.github.io/deeplearning/machinelearning/python/2017/08/30/dlwp-ch14-keep-best-mode ...

  3. CCF201803-1 跳一跳

    试题编号: 201803-1 试题名称: 跳一跳 时间限制: 1.0s 内存限制: 256.0MB 问题描述: 问题描述 近来,跳一跳这款小游戏风靡全国,受到不少玩家的喜爱. 简化后的跳一跳规则如下: ...

  4. JSP实现用户登录样例

    业务描述 用户在login.jsp页面输入用户名密码登录: 如果用户名为xingoo,密码为123,则跳转到成功界面login_success.jsp,并显示用户登录的名字: 如果用户名密码错误,则跳 ...

  5. Oracle 12C配置EM

    12C配置OEM同之前的版本差别较大,没有了emctl,而是直接使用如下方法配置: SQL*Plus: Release 12.1.0.2.0 Production on Tue Jul 19 07:1 ...

  6. SAP Fiori里两种锁机制(lock)的实现

    方法1: ETAG机制 SAP CRM Fiori采用了这种机制. 看一个具体的例子来理解.假设我用用户名Jerry选中了这个ID为3456的Opportunity,点击Edit按钮之后: 会触发一个 ...

  7. 为什么ssh一关闭,程序就不再运行了?

    问题描述 当SSH远程连接到服务器上,然后运行一个程序,eg: ./test.sh, 然后把终端开闭(切断SSH连接)之后,发现该程序中断. 原因 主要元凶: 挂断信号(SIGHUP) 信号 概念介绍 ...

  8. android-ndk-r7b编译环境Cygwin工具搭建及配置(转)

    开发android ndk 的时候需要一个编译工具编译c程序,ndk需要linux下编译,所以win环境下提供Cygwin模拟linux编译C android-ndk 较低版本的这个工具的配置网上很多 ...

  9. windows网络模型之重叠IO(完成例程)的使用

    #include <WINSOCK2.H> #include <stdio.h> #define PORT 5150 #define MSGSIZE 1024 #pragma ...

  10. 深搜(DFS),回溯,Fire Net

    题目链接:http://acm.zju.edu.cn/onlinejudge/showProblem.do?problemId=2 解题报告: 这里的深搜有一点不同,就是,在深搜每一个点时,都要深搜每 ...