【SpringBoot】09.SpringBoot整合Freemarker
SpringBoot整合Freemarker
1.修改pom文件,添加坐标freemarker启动器坐标
<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
  <modelVersion>4.0.0</modelVersion>
  <parent>
    <groupId>org.springframework.boot</groupId>
    <artifactId>spring-boot-starter-parent</artifactId>
    <version>2.1.2.RELEASE</version>
  </parent>
  <groupId>com.dxh</groupId>
  <artifactId>09-spring-boot-view-freemarker</artifactId>
  <version>0.0.1-SNAPSHOT</version>
    <!-- 修改JDK版本 -->
  <properties>
  	<java.version>1.8</java.version>
  </properties>
  <dependencies>
		<!-- Spring Boot 的启动器 -->
		<dependency>
			<groupId>org.springframework.boot</groupId>
			<artifactId>spring-boot-starter-web</artifactId>
		</dependency>
		<!-- freemarker启动器坐标 -->
		<dependency>
			<groupId>org.springframework.boot</groupId>
			<artifactId>spring-boot-starter-freemarker</artifactId>
		</dependency>
	</dependencies>
</project>
2.编写视图:SpringBoot要求模板形式的视图层技术的文件必须放在src/main/resources/目录下必须要一个名称为:templates目录。 视图名为userList.ftl
<html>
	<head>
		<title>展示用户数据</title>
		<meta charset="utf-8"></meta>
	</head>
	<body>
		<table border="1" align="center" width="50%">
		<tr>
			<th>ID</th>
			<th>Name</th>
			<th>Age</th>
		</tr>
		<#list list as user>
			<tr>
				<td>${user.userId}</td>
				<td>${user.userName}</td>
				<td>${user.userAge}</td>
			</tr>
		</#list>
	</table>
	</body>
</html>
3.创建controller、POJO
import java.util.ArrayList;
import java.util.List;
import org.springframework.stereotype.Controller;
import org.springframework.ui.Model;
import org.springframework.web.bind.annotation.RequestMapping;
import com.dxh.pojo.Users;
/**
 * SpringBoot整合jsp
 *
 */
@Controller
public class UserController {
	/**
	   * 处理请求,产生数据
	 */
	@RequestMapping("/showUser")
	public String showUser(Model model) {
		List<Users> list  = new ArrayList<>();
		list.add(new Users(1,"张三",20));
		list.add(new Users(2,"李四",22));
		list.add(new Users(3,"赵武",25));
		//需要一个Model对象
		model.addAttribute("list",list);
		//跳转视图
		return "userList";
	}
}
package com.dxh.pojo;
public class Users {
	private Integer userId;
	private String userName;
	private Integer userAge;
	public Users(Integer userId, String userName, Integer userAge) {
		super();
		this.userId = userId;
		this.userName = userName;
		this.userAge = userAge;
	}
	public Integer getUserId() {
		return userId;
	}
	public void setUserId(Integer userId) {
		this.userId = userId;
	}
	public String getUserName() {
		return userName;
	}
	public void setUserName(String userName) {
		this.userName = userName;
	}
	public Integer getUserAge() {
		return userAge;
	}
	public void setUserAge(Integer userAge) {
		this.userAge = userAge;
	}
}
4.创建启动器——运行
【SpringBoot】09.SpringBoot整合Freemarker的更多相关文章
- 玩转 SpringBoot 2 快速整合 | FreeMarker篇
		FreeMarker 介绍 Apache FreeMarker™是一个模板引擎:一个Java库,用于根据模板和更改数据生成文本输出(HTML网页,电子邮件,配置文件,源代码等).模板是用FreeMar ... 
- SpringBoot: 8.整合freemarker(转)
		1.创建maven项目,添加pom依赖 <!--springboot项目依赖的父项目--> <parent> <groupId>org.springframewor ... 
- springboot整合freemarker
		前后端分离现在越来越多,如何有效的使用springboot来整合我们的页面是一个很重要的问题. springboot整合freemarker有以下几个步骤,也总结下我所犯的错误: 1.加依赖: 2.配 ... 
- springboot 整合 freemarker
		springboot 整合 freemarker 依赖 <parent> <groupId>org.springframework.boot</groupId> & ... 
- SpringBoot整合freemarker 引用基础
		原 ElasticSearch学习笔记Ⅲ - SpringBoot整合ES 新建一个SpringBoot项目.添加es的maven坐标如下: <dependency> <groupI ... 
- springboot学习入门简易版四---springboot2.0静态资源访问及整合freemarker视图层
		2.4.4 SpringBoot静态资源访问(9) Springboot默认提供静态资源目录位置需放在classpath下,目录名需要符合如下规则 /static /public /resourc ... 
- Springboot】Springboot整合邮件服务(HTML/附件/模板-QQ、网易)
		介绍 邮件服务是常用的服务之一,作用很多,对外可以给用户发送活动.营销广告等:对内可以发送系统监控报告与告警. 本文将介绍Springboot如何整合邮件服务,并给出不同邮件服务商的整合配置. 如图所 ... 
- 【springboot spring mybatis】看我怎么将springboot与spring整合mybatis与druid数据源
		目录 概述 1.mybatis 2.druid 壹:spring整合 2.jdbc.properties 3.mybatis-config.xml 二:java代码 1.mapper 2.servic ... 
- SpringBoot与Mybatis整合方式01(源码分析)
		前言:入职新公司,SpringBoot和Mybatis都被封装了一次,光用而不知道原理实在受不了,于是开始恶补源码,由于刚开始比较浅,存属娱乐,大神勿喷. 就如网上的流传的SpringBoot与Myb ... 
随机推荐
- CF741D Arpa’s letter-marked tree and Mehrdad’s Dokhtar-kosh paths 树上启发式合并(DSU ON TREE)
			题目描述 一棵根为\(1\) 的树,每条边上有一个字符(\(a-v\)共\(22\)种). 一条简单路径被称为\(Dokhtar-kosh\)当且仅当路径上的字符经过重新排序后可以变成一个回文串. 求 ... 
- Rolf Dobelli 《清醒思考的艺术》
			为了避免输光自己靠勤奋积累的财产,罗尔夫·多贝里列了一份系统性思维错误的清单.这一份清单可以和查理·芒格的<人类误判心理学>对照查看. 自本杰明·富兰克林以来,电闪雷鸣没有减少变弱或响声变 ... 
- Docker(Docker Toolbox)配置镜像加速更换国内源
			自己当时装的是Win10专业工作室版本,不知道为什么不支持window for docker, 所以选择了Docker Toolbox 的方式,主要是为了学习,虽然这种方式是不建议安装的,但是基础的学 ... 
- 多测师讲解自动化测试 _RF关键字001_(上)_高级讲师肖sir
			讲解案例1: Open Browser http://www.baidu.com gc #打开浏览器 Maximize Browser Window #窗口最大化 sleep 2 #线程等待2秒 In ... 
- 对json数组按照id精确查询并修改值
			//json数组,里面有一个id等于5的,班级的标识和名称不是该班级,通过id把班级信息修改为指定的信息 var zNodes=[ { id:1, classid:1, className:" ... 
- 【转载】opencvVS2019配置方法
			环境: 系统:win10系统截至2020920版本 opencv版本:3.0.0版本 IDE:宇宙最强IDEA最新版本2019社区版 教程: 1.下载opencv安装包官网下载链接:https://o ... 
- 【不知道怎么分类】HDU - 5963 朋友
			题目内容 B君在围观一群男生和一群女生玩游戏,具体来说游戏是这样的: 给出一棵n个节点的树,这棵树的每条边有一个权值,这个权值只可能是0或1. 在一局游戏开始时,会确定一个节点作为根.接下来从女生开始 ... 
- spring boot:使用caffeine+redis做二级缓存(spring boot 2.3.1)
			一,为什么要使用二级缓存? 我们通常会使用caffeine做本地缓存(或者叫做进程内缓存), 它的优点是速度快,操作方便,缺点是不方便管理,不方便扩展 而通常会使用redis作为分布式缓存, 它的优点 ... 
- C++ Primer第5版 第一章课后练习
			练习1.9 #include <iostream> int main() { int sum = 0, val = 50; while (val <= 100) { sum += v ... 
- oracle强制修改字符集
			首先查看服务端字符集 select * from v$nls_parameters where parameter = 'NLS_CHARACTERSET' NLS_CHARACTERSET WE8M ... 
