`
234390216
  • 浏览: 10229619 次
  • 性别: Icon_minigender_1
  • 来自: 深圳
博客专栏
A5ee55b9-a463-3d09-9c78-0c0cf33198cd
Oracle基础
浏览量:462454
Ad26f909-6440-35a9-b4e9-9aea825bd38e
springMVC介绍
浏览量:1775238
Ce363057-ae4d-3ee1-bb46-e7b51a722a4b
Mybatis简介
浏览量:1398154
Bdeb91ad-cf8a-3fe9-942a-3710073b4000
Spring整合JMS
浏览量:394944
5cbbde67-7cd5-313c-95c2-4185389601e7
Ehcache简介
浏览量:679873
Cc1c0708-ccc2-3d20-ba47-d40e04440682
Cas简介
浏览量:530764
51592fc3-854c-34f4-9eff-cb82d993ab3a
Spring Securi...
浏览量:1183536
23e1c30e-ef8c-3702-aa3c-e83277ffca91
Spring基础知识
浏览量:467426
4af1c81c-eb9d-365f-b759-07685a32156e
Spring Aop介绍
浏览量:151265
2f926891-9e7a-3ce2-a074-3acb2aaf2584
JAXB简介
浏览量:68010
社区版块
存档分类
最新评论

Spring Boot(24)——使用Freemarker视图

阅读更多

使用Freemarker视图

Spring Boot默认对Freemarker也有支持,需哟使用Freemarker的第一步是加入Freemarker的依赖。

<dependency>
    <groupId>org.freemarker</groupId>
    <artifactId>freemarker</artifactId>
</dependency>

org.springframework.boot.autoconfigure.freemarker.FreeMarkerAutoConfiguration负责对Freemarker进行自动配置。默认Freemarker将在classpath:/templates/路径下寻找模板,且默认将在视图名称后加上.ftl后缀,即当返回的视图名称是abc时,返回的Freemarker模板文件是classpath:/templates/abc.ftl。现假设有如下Controller,当访问/freemarker/hello时将返回classpath:/templates/hello.ftl模板文件。

@Controller
@RequestMapping("freemarker")
public class FreemarkerController {

  @GetMapping
  public String index() {
    return "index";
  }

  @GetMapping("hello")
  public String hello(Map<String, Object> model) {
    model.put("message", "helloWorld!");
    model.put("list", Arrays.asList(10, 20, 30, 40, 50));
    return "hello";
  }

}

如果hello.ftl的内容如下。

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>Hello Freemarker</title>
</head>
<body>
    Hello Freemarker!
    <br/>
    ${message}
    <ul>
        列表元素是:
        <#list list as item>
            <li>${item}</li>
        </#list>
    </ul>
</body>
</html>

那么当访问/freemarker/hello时你将看到如下内容。

freemarker结果

如果不想使用默认的模板路径,可以通过spring.freemarker.templateLoaderPath属性进行指定,它可以同时指定多个路径。它也可以通过spring.freemarker.prefix指定模板的前缀,通过spring.freemarker.suffix指定模板的后缀。这些属性将由FreeMarkerProperties负责接收。当我们指定了如下配置时,如果返回的视图名称是abc,则将寻找classpath:/freemarker/prefix/abc.ftlclasspath:/ftl/prefix/abc.ftl

spring.freemarker.templateLoaderPath=classpath:/freemarker/,classpath:/tpl/
spring.freemarker.prefix=prefix/
spring.freemarker.suffix=.ftl

(注:本文基于Spring Boot 2.0.3所写)

0
0
分享到:
评论

相关推荐

    Spring boot + Mybatis + Freemarker

    在IT行业中,Spring Boot、MyBatis和FreeMarker是三个非常重要的开源框架,它们共同构建了一个高效、便捷的Web开发环境。Spring Boot简化了Spring应用的初始搭建以及开发过程,MyBatis则是一个轻量级的持久层框架,...

    spring boot + mybaits +freemarker +maven 架构来袭 注解版

    综上所述,这个项目利用Spring Boot的便捷性,MyBatis的数据访问能力,FreeMarker的视图渲染功能,以及Maven的项目构建和管理,构建了一个高效、易维护的Web应用程序。这样的架构设计能够帮助开发者快速搭建项目,...

    spring boot mybatis freemarker整合项目

    4. 控制器与视图:在Controller中,使用`ModelAndView`或`String`返回Freemarker模板的名称,Spring Boot会自动处理并返回相应的HTML。 四、IDEA中的项目构建与运行 1. 创建新项目:在IntelliJ IDEA中选择Spring ...

    Spring Boot实战派(源码)

    - Spring Boot支持集成RabbitMQ、Kafka等消息中间件,使用`@RabbitListener`或`@KafkaListener`处理消息。 12. **缓存** - 集成Redis、Hazelcast等缓存系统,使用`@Cacheable`、`@CacheEvict`进行缓存管理。 13....

    基于spring boot 2集成hibernate及freemarker的简单实例

    通过Spring Boot 2、Hibernate和FreeMarker的集成,你可以创建一个轻量级的、面向对象的Web应用,其中数据访问层使用Hibernate简化数据库操作,而视图层利用FreeMarker生成动态HTML。这个简单的实例为初学者提供了一...

    Spring配置Freemarker视图解析器,前台页面全部使用freemarker渲染

    总结来说,通过Spring配置Freemarker视图解析器,我们可以将后端的Java逻辑与前端的HTML呈现分离,使得开发更加模块化。Freemarker的强大模板语言则提供了丰富的功能,让开发者能方便地创建动态页面。通过熟练掌握...

    Learning Spring Boot 2.0 Second Edition

    接着,作者会深入探讨Spring Boot中的Web开发,包括使用Spring MVC构建RESTful API,处理HTTP请求和响应,以及使用Thymeleaf、FreeMarker等模板引擎进行视图渲染。同时,书中也会介绍Spring Boot的安全组件——...

    Spring Boot 系列教程 freemarker导出word下载

    在本教程中,我们将深入探讨如何使用Spring Boot和FreeMarker模板引擎来生成Word文档并进行下载。Spring Boot作为Java开发的快速启动框架,简化了配置和集成,而FreeMarker则是一个强大的模板语言,用于动态生成HTML...

    Spring Boot实战 ,丁雪丰 (译者).zip

    在讲解基础知识后,书中的实战部分会深入到Spring Boot的实际应用,包括如何创建RESTful API、使用Thymeleaf或Freemarker进行视图渲染、集成MyBatis或JPA进行数据库操作。书中还会涵盖Spring Security,它是Spring...

    spring boot 2.0.1_freemarker_redis

    在Spring Boot中,它替代了JSP作为视图层技术,使得视图和控制层分离更加明确。Freemarker语法简洁,支持条件判断、循环等复杂逻辑,为开发者提供了灵活的页面设计方式。 五、用户登录注册实现 1. 用户注册:首先,...

    基于MAVEN的spring boot 环境搭建,已配置好freemarker 需要jdk 1.8

    创建Spring Boot的控制器类,处理HTTP请求并返回FreeMarker视图: ```java @RestController public class MyController { @GetMapping("/") public ModelAndView home() { Map, Object&gt; model = new HashMap...

    Spring boot访问jsp页面

    然而,Spring Boot默认并不支持JSP视图解析,因为它的设计理念是推崇RESTful API和使用模板引擎如Thymeleaf或Freemarker。但如果你的项目需要使用JSP,可以通过以下步骤进行配置: 1. 添加`spring-boot-starter-web...

    《Learning Spring Boot 2.0》高清版

    接着,书中深入讨论了Spring Boot中的Web开发,涵盖了使用Spring MVC开发RESTful API、处理HTTP请求、响应式编程模型以及集成Thymeleaf、FreeMarker等模板引擎进行视图渲染。对于数据库操作,书中有详尽的章节讲述...

    Spring开发指南——中文版

    《Spring开发指南——中文版》是由夏昕编著的一本针对Spring框架的中文教程,旨在帮助开发者更好地理解和应用Spring框架。Spring是Java平台上的一个核心框架,广泛应用于企业级应用开发,提供了一种全面的编程和配置...

    Spring Boot2企业应用实战

    同时,它也集成了Thymeleaf、FreeMarker等模板引擎进行视图渲染。 7. **数据访问**:Spring Boot对JPA和MyBatis等持久层框架有很好的支持,提供了数据源配置、事务管理等功能。例如,使用`spring-boot-starter-data...

    SpringDataJpa整合FreeMarker源码样例

    在当今的软件开发中,Spring Boot、Spring Data JPA和FreeMarker的整合已经成为了构建高效、简洁Web应用的常见选择。本篇将深入探讨如何将这三个强大的工具结合在一起,通过源码样例进行详细解读。 首先,让我们...

    spring boot jpa security

    综合上述信息,我们可以创建一个Spring Boot应用,使用Spring Data JPA进行数据持久化,Spring Security负责应用的安全管理,达梦数据库作为后端数据存储,FreeMarker处理前端展示,最后通过Assembly插件将整个项目...

    Spring Boot实战 ,丁雪丰 (译者)-最高清原版

    书中也会涉及Spring Boot的Web开发,包括RESTful API设计、使用Thymeleaf和FreeMarker模板引擎进行视图渲染,以及整合WebSocket实现实时通信。对于微服务架构,读者会学习如何使用Spring Cloud与Spring Boot结合,...

    Spring Boot入门与实战_springboot_spring_

    1. **配置视图解析器**:Spring Boot 默认支持Thymeleaf、Freemarker和Groovy模板引擎。 2. **使用@RestController和@RequestMapping**:实现HTTP请求的映射和处理。 3. **全局异常处理**:通过@ControllerAdvice和@...

    Spring Boot教程程序样例

    同时,它也提供了对Thymeleaf、FreeMarker、JSP等视图解析器的支持。 4. **数据访问**:Spring Boot 集成了JPA(Java Persistence API)和Spring Data,方便操作数据库。它支持多种数据库,如MySQL、PostgreSQL、H2...

Global site tag (gtag.js) - Google Analytics