赞
踩
springboot开发
自动装配
springboot帮我们配置了什么?能不能进行修改?能修改哪些东西?能不能扩展?
解决的问题:
一、静态资源
测试环境是否搭建好,在主类文件下创建controller包,然后创建一个controller测试
- //以后工作中就是写接口,接口就是这样一个Controller
- @RestController//不用跳转视图,直接返回字符串都可以
- public class HelloController {
-
- @RequestMapping("/hello")
-
- public String test(){
- return "HelloController";
- }
- }
ok,环境搭建成功
- @Override
- public void addResourceHandlers(ResourceHandlerRegistry registry) {
-
- //获取静态资源方法1
- if (!this.resourceProperties.isAddMappings()) {
- logger.debug("Default resource handling disabled");
- return;
- }
- Duration cachePeriod = this.resourceProperties.getCache().getPeriod();
- CacheControl cacheControl = this.resourceProperties.getCache().getCachecontrol().toHttpCacheControl();
-
- //获取静态资源方法2
- if (!registry.hasMappingForPattern("/webjars/**")) {
- customizeResourceHandlerRegistration(registry.addResourceHandler("/webjars/**")
- .addResourceLocations("classpath:/META-INF/resources/webjars/")
- .setCachePeriod(getSeconds(cachePeriod)).setCacheControl(cacheControl));
- }
- String staticPathPattern = this.mvcProperties.getStaticPathPattern();
- if (!registry.hasMappingForPattern(staticPathPattern)) {
- customizeResourceHandlerRegistration(registry.addResourceHandler(staticPathPattern)
- .addResourceLocations(getResourceLocations(this.resourceProperties.getStaticLocations()))
- .setCachePeriod(getSeconds(cachePeriod)).setCacheControl(cacheControl));
- }
- }
方法1:
什么是webjars:可以搜索一个官网,找到jquery这类对应的maven依赖。
导入之后可以发现,addResourceHandlers 中的查找静态资源的方法对应文件夹
启动项目可以根据路径找到导入的静态资源。这就是通过映射
方法2:
注意:自己键的文件夹名一定要对,resources(一定带s的)
会发现访问静态资源的顺序完全是按照源码写的(字符串数组)顺序来,从大到小
resources(一般放upload上传的文件)
static(一般放图片以及js等静态资源,)
public(一般放某些公共资源)
总结:
1、在springboot中,可以使用以下方式处理静态资源
映射的路径就是访问的方式
2、优先级
resources(一般放upload上传的文件)
static(一般放图片以及js等静态资源,)
public(一般放某些公共资源)
二、首页和图标定制
编写一个html放在public
- <!DOCTYPE html>
- <html lang="en">
- <head>
- <meta charset="UTF-8">
- <title>Title</title>
- </head>
- <body>
-
- <h1>首页</h1>
-
- </body>
- </html>
图标需要再去学,就是网页上面名字左边那个小图标。
三、模板引擎(Thymeleaf)
使用:
1、直接导入starter启动器
- <!--thymeleaf模板引擎-->
- <dependency>
- <groupId>org.springframework.boot</groupId>
- <artifactId>spring-boot-starter-thymeleaf</artifactId>
- </dependency>
作用:页面模板
查看源码:ThymeleafProperties(快速搜索文件shift*2)
发现thymeleaf源码里面有一个html格式的视图解析器
以及其能识别到templates文件夹
2、在templates目录下编写一个html页面
- <!DOCTYPE html>
- <html lang="en">
- <head>
- <meta charset="UTF-8">
- <title>Title</title>
- </head>
- <body>
-
- <h1>test</h1>
-
- </body>
- </html>
3、编写controller接口请求捕获跳转到这个页面
- //在templates目录下的所有页面,只能通过controller跳转
- //这个需要模板引擎的支持 thymeleaf
- @Controller//这个注解controller会跳转视图(jsp页面)
- public class IndexController {
-
- @RequestMapping("/test")
- public String index(){
-
- return "test";
- }
- }
4、通
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。