一、Springboot的静态资源访问
1、静态资源有哪些? js、css、图片。。。
2、传统web工程里,有一个webapps的文件夹,传统项目都会放在那里
3、springboot 项目中需要我们在src/main/resources里新建一个/static文件夹,把静态文件放到这里面去。注意:我们在访问时,浏览器地址栏里需要输入的是 http://127.0.0.1:8080/xxx.jpg 不需要把/static也写上去。除非在static下再建一个static文件夹。
二、springboot整合FreeMarker视图层
1、先向pom.xml中导入依赖
<!-- 引入 freeMarker 的依赖包 . -->
<dependency>
<groupId> org.springframework.boot </groupId>
<artifactId> spring-boot-starter-freemarker </artifactId>
</dependency>
2、创建一个FTLIndexController.java文件。使用@Controller注解,因为我们是要显示一个动态页面的。@RestController返回的是json格式
3、在ftlIndex这个class类中我们想让它返回我们想要的.ftl文件。而.ftl文件是默认存储在src/main/resource下的templates文件夹中。所以我们需要新建这个文件夹,并且在里面编写好我们的xxx.ftl的文件。
4、xxx.ftl文件里的内容可以是纯文本,但一般都是我们的html文件。FreeMarker只不过是在html代码中把那些类似姓名,年龄等个性化的标签通过它的语言形式(类似${name}${age}),做成动态的标签,使其可以通过连接服务器实现标签的动态改变。
5、代码和运行实例
5.1、代码
5.1.1、后台.java程序
package com.ssrtest01.member.controller;
importcom.sun.javafx.collections.MappingChange;
importorg.springframework.stereotype.Controller;
importorg.springframework.web.bind.annotation.RequestMapping;
import java.util.ArrayList;
import java.util.List;
import java.util.Map;
/**
*整合freemarker视图层
*作者:荣杉山
*/
@Controller
public class FTLIndexController{
@RequestMapping("/ftlIndex")
public String ftlIndex(Map<String,Object>map){
map.put("name","####杉山真帅#####");
map.put("age","22");
map.put("sex","1");
map.put("like","women");
List<String>userlist=newArrayList<String>();
userlist.add("hyc");
userlist.add("张三");
userlist.add("李四");
map.put("userlist",userlist);
return"ftlIndex";
}
}
5.1.2、前台.flt文件,嵌入html格式
哈哈哈哈哈,这是我的第一个Fremarker文件:ftlIndex
<br><!DOCTYPEhtml>
<html>
<headlang="en">
<metacharset="UTF-8"/>
<title>这是首页</title>
</head>
<body>
${name}<br>
${age}<br>
<#ifsex="1"><br>
男
<#else><br>
女
</#if><br>
<#listuserlistasuser>
${user}<br>
</#list>
</body>
</html>
5.2、运行效果图
三、源码地址: https://github.com/SsRong/springboot2.0-ssrtest01