| |
|
开发:
C++知识库
Java知识库
JavaScript
Python
PHP知识库
人工智能
区块链
大数据
移动开发
嵌入式
开发工具
数据结构与算法
开发测试
游戏开发
网络协议
系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程 数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁 |
-> Java知识库 -> SpringBoot Web开发 -> 正文阅读 |
|
[Java知识库]SpringBoot Web开发 |
自动装配springboot到底帮我们配置了什么?我们能不能进行修改?能修改那些东西?
要解决的问题:
静态资源探究public: 一般放公共资源
这就是自定义路径的参数,要自定义了默认的路径就会失效,所以我们不推荐自定义路径
通过以上源码我们可以得出结论:
2.优先级:resources > static(默认) > public 首页和图标定制图标(favicon.ico)定制在springboot2.20 的时候已经被删除了 thymeleaf模板模板引擎的作用就是我们来写一个页面模板,比如有些值呢,是动态的,我们写一些表达式。而这些值,从哪来呢,我们来组装一些数据,我们把这些数据找到。然后把这个模板和这个数据交给我们模板引擎,模板引擎按照我们这个数据帮你把这表达式解析、填充到我们指定的位置,然后把这个数据最终生成一个我们想要的内容给我们写出去,这就是我们这个模板引擎,不管是jsp还是其他模板引擎,都是这个思想。只不过呢,就是说不同模板引擎之间,他们可能这个语法有点不一样。其他的我就不介绍了,我主要来介绍一下SpringBoot给我们推荐的Thymeleaf模板引擎,这模板引擎呢,是一个高级语言的模板引擎,他的这个语法更简单。而且呢,功能更强大。 我们呢,就来看一下这个模板引擎,那既然要看这个模板引擎。首先,我们来看SpringBoot里边怎么用。 第一步:引入thymeleaf,怎么引入呢,对于springboot来说,什么事情不都是一个start的事情嘛,我们去在项目中引入一下。给大家三个网址: 依赖:
通过maven 下好的jar包
test.html
执行结果: SpringMVC自动配置在进行测试前,我们还需要知道一个东西,就是SpringBoot对我们的SpringMVC还做了哪些配置,包括如何扩展,如何定制。只有把这些都搞清楚了,我们在之后使用才会更加得心应手。
格式化转换器我们以日期格式举例,我们可以看出在源码中默认的日期格式: 修改SpringBoot的默认配置方式一 SpringBoot的底层,大量用到了这些设计细节思想,所以,没事需要多阅读源码!得出结论; SpringBoot在自动配置很多组件的时候,先看容器中有没有用户自己配置的(如果用户自己配置@bean),如果有就用用户配置的,如果没有就用自动配置的;如果有些组件可以存在多个,比如我们的视图解析器,就将用户配置的和自己默认的组合起来! 扩展使用Spring Mvc我们要做的就是编写一个@Configuration注解类,并且类型要为WebMvcConfigurer,还不能标注@EnableWebMvc注解;我们去自己写一个; 我们新建一个包叫config,写一个类MyMvcConfig; 在springboot中,有非常多的xxxConfiguration 帮助我们进行扩展配置,只要看见了这个东西,我们就要注意了! 按官方的说法,@EnableWebMvc表示完全自己控制mvc配置,也就是说所有配置自己重写,所有默认配置都没了!有时会导致很多请求进不来,或者参数转换出错之类的,因为spring mvc默认的转换器已经不生效了。
官方文档译文:如果你想保持那些Spring Boot MVC定制,并进行更多的MVC定制(拦截器、格式化器、视图控制器和其他特性),你可以添加你自己的@Configuration类,类型为WebMvcConfigurer,但不需要@EnableWebMvc。 |
|
|
上一篇文章 下一篇文章 查看所有文章 |
|
开发:
C++知识库
Java知识库
JavaScript
Python
PHP知识库
人工智能
区块链
大数据
移动开发
嵌入式
开发工具
数据结构与算法
开发测试
游戏开发
网络协议
系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程 数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁 |
360图书馆 购物 三丰科技 阅读网 日历 万年历 2025年3日历 | -2025/3/4 6:18:58- |
|
网站联系: qq:121756557 email:121756557@qq.com IT数码 |