一、src/main/resources/templates下新建welcome.ftl

<!DOCTYPE html>

<html lang="en">

<body>
Date: ${time?date}
<br>
Time: ${time?time}
<br>
Message: ${message}
</body> </html>

二、启动类

package com.my.bootdemo;

import org.springframework.boot.SpringApplication;
import org.springframework.boot.autoconfigure.SpringBootApplication;
@SpringBootApplication
public class Bootdemo1Application { public static void main(String[] args) {
SpringApplication.run(Bootdemo1Application.class, args);
}
}

三、controller

package com.my.bootdemo;

import java.util.Date;
import java.util.Map; import org.springframework.stereotype.Controller;
import org.springframework.web.bind.annotation.GetMapping; @Controller
public class HelloController { @GetMapping("/")
public String welcome(Map<String, Object> model) {
model.put("time", new Date());
model.put("message", "yes, this is message.");
return "welcome";
}
}

四、pom.xml中添加配置

<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-web</artifactId>
</dependency>
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-freemarker</artifactId>
</dependency>

以上就是全部的配置了,application.properties中不需要任何参数,全部都是默认,启动程序,浏览器输入:http://localhost:8080/

整个过程还是比较简单的,但由于我们项目还在使用struts2,直接要使用springboot,以上操作还是花了些时间,故记录一下,花时间主要原因:最开始Controller使用的注解为@RestController,这就造成始终返回给页面的都是welcome这个单词,而不是welcome这个页面。

@RestController = @Controller + @ResponseBody,加上@ResponseBody注解,返回的是json数据,具体实现原理后续在进行调查

一般配置中应该添加前端控制器在服务器时就进行初始化

spring.mvc.servlet.load-on-startup=1

springboot2+freemarker简单使用的更多相关文章

  1. 【学习笔记】初识FreeMarker简单使用

    楔子: 之前在和同事讨论,同事说“jsp技术太古老了,有几种页面技术代替,比如FreeMarker.Velocity.thymeleaf,jsp快废弃了……”云云.我这一听有点心虚……我在后端部分越刨 ...

  2. 第一篇:SpringBoot2.0简单介绍

    距离Spring Boot1.0发布已经4年了,今年3月份SpringBoot2.0正式发布.让我们一起来了解一下它. Spring Boot主要依赖于Spring,整合了很多框架的使用方式,帮助开发 ...

  3. Freemarker简单用法

    Freemarker 最简单的例子程序   freemarker-2.3.18.tar.gz http://cdnetworks-kr-1.dl.sourceforge.net/project/fre ...

  4. freemarker 简单操作

    操作字符串函数 1. substring(start,end)从一个字符串中截取子串 start:截取子串开始的索引,start必须大于等于0,小于等于end end: 截取子串的长度,end必须大于 ...

  5. Freemarker简单封装

    Freemarker是曾经很流行的一个模板库,它是一种通用的模板库,不仅仅可以用来渲染html. 模板可以分为两类: 只能生成特殊类型文件的模板,如jinja.django.Thymeleaf.jad ...

  6. FreeMarker简单入门到使用

    FreeMarker freemarker是一个用java开发的模版引擎,百度百科: 常用的java模版还有快要被抛弃的Jsp(熟悉).Thymeleaf(了解).Velocity(不知) freem ...

  7. SpringBoot2.0源码分析(一):SpringBoot简单分析

    SpringBoot2.0简单介绍:SpringBoot2.0应用(一):SpringBoot2.0简单介绍 本系列将从源码角度谈谈SpringBoot2.0. 先来看一个简单的例子 @SpringB ...

  8. 页面静态化技术Freemarker技术的介绍及使用实例.

    一.FreeMarker简介 1.动态网页和静态网页差异 在进入主题之前我先介绍一下什么是动态网页,动态网页是指跟静态网页相对应的一种网页编程技术.静态网页,随着HTML代码的生成,页面的内容和显示效 ...

  9. Springboot2.1.x配置Activiti7单独数据源问题

    Springboot2.1.x配置Activiti7单独数据源问题 简介 最近基于最新的Activiti7配置了SpringBoot2. 简单上手使用了一番.发现市面上解决Activiti7的教程很少 ...

随机推荐

  1. 初学Java Web(2)——搭建Java Web开发环境

    虽然说 html 和 css 等前端技术,是对于 Web 来说不可或缺的技术,但是毕竟更为简单一些,所以就不详细介绍了,没有基础的同学可以去菜鸟教程或者W3school进行自主学习,最好的方式还是做一 ...

  2. ASP.NET Core中使用表达式树创建URL

    当我们在ASP.NET Core中生成一个action的url会这样写: var url=_urlHelper.Action("Index", "Home"); ...

  3. Linux下 Vim(Vi)编辑器的使用

    vi编辑器 vi是UNIX和类UNIX环境下的可用于创建文件的屏幕编辑器.vi有两种工作模式:命令模式和文本输入模式.启动vi需要输入vi,按[Spacebar]键并输入文件名后回车. 切换模式键 v ...

  4. JDK源码分析(10)之 Hashtable 相关

    本文的目的并不是让你对Hashtable更加了解,然后灵活运用:因为Hashtable的一个历史遗留的类,目前并不建议使用,所以本文主要和HashMap对比,感受同样功能的不同实现,知道什么是好的代码 ...

  5. [四]基础数据概述之Byte详解

        Byte 基本数据类型byte  的包装类 Byte 类型的对象包含一个 byte类型的字段            属性简介   构造方法 Byte的构造方法也是有两种 可以通过基本类型byt ...

  6. Spring Cloud Alibaba基础教程:使用Nacos实现服务注册与发现

    自Spring Cloud Alibaba发布第一个Release以来,就备受国内开发者的高度关注.虽然Spring Cloud Alibaba还没能纳入Spring Cloud的主版本管理中,但是凭 ...

  7. 大前端的自动化工厂(3)—— babel

    一. 关于babel babel是ES6+语法的编译器,官方网址:www.babeljs.io,用于将旧版本浏览器无法识别的语法和特性转换成为ES5语法,使代码能够适用更多环境. 最初的babel使用 ...

  8. Java开发笔记(四十四)本地日期时间与字符串的互相转换

    之前介绍Calendar的时候,提到日历实例无法直接输出格式化后的时间字符串,必须先把Calendar类型转换成Date类型,再通过格式化工具SimpleDateFormat获得字符串.而日期时间的格 ...

  9. ASP.NET Core基础1:应用启动流程

    先看下ASP.NET Core的启动代码,如下图: 通过以上代码,我们可以初步得出以下结论: 所有的ASP.NET Core程序本质上也是一个控制台程序,使用Program的Main方法作为程序的入口 ...

  10. create-react-app 修改项目端口号及ip,设置代理

    项目相关配置,需要在package.json中配置