SpringBootWeb开发
1.SpringBoot静态资源映射规则
1 | public void addResourceHandlers(ResourceHandlerRegistry registry) { |
1、所有的/webjars/**,都去classpath:/META-INF/resources/webjars/找资源
webjars:以jar包的方式引入资源,网页搜索webjars,选择maven的方式引入,例如引入jquery
1 | <dependency> |
访问jQuery.js的路径为:localhost:8080/webjars/jquery/3.3.1/jquery.js
2.“/**”访问当前项目的任何资源,(静态资源的文件夹)
1 | "classpath:/META-INF/resources/", |
访问l路径:localhost:8080/asserts/js/bootstrap.min.js
3.欢迎页面映射
1 |
|
静态资源文件夹下的index.html,例如访问localhost:8080
4.映射网页小图标,在静态资源文件夹下找
1 |
|
项目结构如下图:
2.SpringBoot引入thymeleaf
1、pom.xml文件中引入thymeleaf
1 | <dependency> |
2、默认使用的thymeleaf版本低,修改版本
1 | <properties> |
3.Thymeleaf基本使用
1 | ( |
注意:thymeleaf能渲染html页面,在Controller使用注解@Controller,不能使用@RestController注解。
使用thymeleaf方法如下:
- html页面引入thymeleaf域名空间
- Controller类中收发请求和传递数据
1 |
|
1 |
|
4.Thymeleaf语法
1、th:text:改变当前元素的文本内容的;可以使用th:任意html属性:来替换原生属性的值
1 | <div id="test" class="test" th:id="${hello}" th:class="${hello}" th:text="${hello}"></div> |
1 | <div id="你好" class="你好">你好</div> |
Order | Feature | Attributes |
---|---|---|
1 | 片段包含 | th:insert` th:replace` |
2 | 遍历 | th:each |
3 | 条件判断 | th:if` th:unlessth:switch th:case` |
4 | 声明变量 | th:object` th:with` |
5 | 任意属性修改 | th:attr` th:attrprepend th:attrappend` |
6 | 修改指定属性默认值 | th:value` th:hrefth:src …` |
7 | 修改标签体内容 | th:text(转义特殊字符)th:utext(不转义) |
8 | 声明片段 | th:fragment |
9 | 移除片段 | th:remove |
2、表达式语法(参考thymeleaf官方文档第四章)
1 | Simple expressions:(表达式语法) |
5.thymeleaf基本使用
controller数据准备如下:
1 | "/success") ( |
1 |
|
6.扩展SpringMVC
例如需要扩展如下SpringMVC功能:
1 |
|
编写一配置类(@Configuration),继承WebMvcConfigurationSupport,不能标注@EnableWebMvc注解,需要扩展什么功能,就重写什么方法
1 | //使用WebMvcConfigurationSupport扩展SpringMVC的功能 |