1.写在前面
描述的主要内容:使用springboot框架通过controller返回的字符串+freemarker模板引擎实现跳转对应的html页面
2.准备工作
搭建springboot框架
这里就不再赘述了,推荐一篇博文,写的就是springboot框架的搭建过程,写的非常调理。
3.实现
第一步 创建一个controller如下图所示
需要注意的:
- controller类要使用@Controller注解才能可以
- (⊙o⊙)…
import org.springframework.stereotype.Controller;
import org.springframework.web.bind.annotation.RequestMapping;
/**
1. @ClassName: initController
2. @Description: 意见反馈的首页
3. @Author: xh
4. @Date: 2019/7/20 18:32
**/
@Controller
public class initController {
@RequestMapping("/suggestion")
public String indexController(){
return "suggestion";
}
}
第二步 添加freemarker模板引擎的maven依赖
<!--freemarker-->
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-freemarker</artifactId>
</dependency>
第三步 修改配置文件application.yml
spring:
freemarker:
suffix: .html
request-context-attribute: request
第四步 新建一个suggestion.html
html的名称要和controller中return的字符串一致
第五步 验证
输入 localhost:端口号/上下文/suggestion 验证能否跳转到suggestion.html页面
4.遇到的问题
页面跳转成功后不能加载js、css等静态资源?
思路:
就比如我idea,默认生成的静态资源目录是statics,而源码中默认的静态资源目录是static,如下图示:
这时需要在application.yml中将静态资源路径配一下,内容如下:
spring:
resources:
# 静态资源路径
# 良心提醒-->路径的最后不用忘记加斜杠!!!!此处被坑过
static-locations: classpath:/statics/,classpath:/templates/,classpath:/resources/,classpath:/META-INF/resources/
mvc:
# 静态资源映射方式
static-path-pattern: /statics/**
5.总结
自己从头搭建一次springboot会发现有很多坑的,比自己在现成的工程中添加功能要难受一些,不过,只有进过坑才能成长,以后就知道避开了。。。