SpringMVC入门与数据绑定13:Spring MVC整合FreeMarker;( 引入依赖;配置FreeMarker引擎;配置FreeMarker参数;)

说明:

(1)有关FreeMarker的内容,如有需要可以快速参考【(5)常用功能与过滤器、监听器、FreeMarker;】中的内容;

(2)本篇博客内容:

          ● Spring MVC默认使用JSP作为模板引擎,但又因为FreeMarker比JSP好用;所以本篇博客就介绍【Spring MVC整合FreeMarker】;

          ● 本篇博客仅仅说明了【Spring MVC整合FreeMarker】;

(3)本篇博客的代码沿用【SpringMVC入门与数据绑定12:ModelAndView对象;(ModelAndView的基本使用、setViewName()、相对路径和绝对路径;替代方案【String和ModelMap】;)】中的【first-springmvc】项目;

(4)本篇博客又提到了那个容易忘记的点:我们引入新的依赖后,需要及时把这个依赖添加到发布中去;

目录

一:【Spring MVC整合FreeMarker】步骤;

第一步:在Maven的pom.xml中引入【FreeMarker的依赖】和【spring-context-support】;

第二步:在applicationContext.xml中配置:通知Spring MVC【我们要使用FreeMarker模板引擎】;

第三步:在applicationContext.xml中配置:配置FreeMarker参数;

二:【Spring MVC整合FreeMarker】演示;(这儿的内容和【一】中的内容一样,略显啰嗦)

第一步:在Maven的pom.xml中引入【FreeMarker的依赖】和【spring-context-support】;

第二步:在applicationContext.xml中配置:通知Spring MVC【我们要使用FreeMarker模板引擎】;

第三步:在applicationContext.xml中配置:配置FreeMarker参数;

三:【在Spring MVC中实际使用FreeMarker】测试;

1.创建FreeMarkerController,test.ftl:用于演示;

2.容易忘记的一个点:将新引入的依赖,添加到发布中去;

3.启动Tomcat,观察效果;


一:【Spring MVC整合FreeMarker】步骤;

第一步:在Maven的pom.xml中引入【FreeMarker的依赖】和【spring-context-support】;

SpringMVC入门与数据绑定13:Spring MVC整合FreeMarker;( 引入依赖;配置FreeMarker引擎;配置FreeMarker参数;)_第1张图片

第二步:在applicationContext.xml中配置:通知Spring MVC【我们要使用FreeMarker模板引擎】;

SpringMVC入门与数据绑定13:Spring MVC整合FreeMarker;( 引入依赖;配置FreeMarker引擎;配置FreeMarker参数;)_第2张图片

说明:

(1)这儿设置UTF-8编码方式是:在【Controller发过来的数据】和【FreeMarker模板引擎】渲染完成后,向客户端浏览器返回响应时,响应体中使用的字符串集编码是UTF-8;

(2)经过上面的设置以后,Spring MVC就启用了FreeMarker,Spring MVC已经知道了FreeMarker的存在;但是还不够,我们还需要对FreeMarker本身进行参数设置;

第三步:在applicationContext.xml中配置:配置FreeMarker参数;

SpringMVC入门与数据绑定13:Spring MVC整合FreeMarker;( 引入依赖;配置FreeMarker引擎;配置FreeMarker参数;)_第3张图片

说明:

(1)这儿设置的UTF-8编码方式是:在【Controller发过来的数据】和【FreeMarker模板引擎】渲染的过程中,所有的字符按UTF-8字符集进行编码;


二:【Spring MVC整合FreeMarker】演示;(这儿的内容和【一】中的内容一样,略显啰嗦)

第一步:在Maven的pom.xml中引入【FreeMarker的依赖】和【spring-context-support】;

pom.xml:



    4.0.0

    com.imooc
    first-springmvc
    1.0-SNAPSHOT
    
        
            aliyun
            aliyun
            https://maven.aliyun.com/repository/public
        
    

    
        
            org.springframework
            spring-webmvc
            5.1.9.RELEASE
        

        
            org.freemarker
            freemarker
            2.3.28
        
        
            org.springframework
            spring-context-support
            5.1.9.RELEASE
        
    
    

说明:

SpringMVC入门与数据绑定13:Spring MVC整合FreeMarker;( 引入依赖;配置FreeMarker引擎;配置FreeMarker参数;)_第4张图片

第二步:在applicationContext.xml中配置:通知Spring MVC【我们要使用FreeMarker模板引擎】;

SpringMVC入门与数据绑定13:Spring MVC整合FreeMarker;( 引入依赖;配置FreeMarker引擎;配置FreeMarker参数;)_第5张图片

第三步:在applicationContext.xml中配置:配置FreeMarker参数;

SpringMVC入门与数据绑定13:Spring MVC整合FreeMarker;( 引入依赖;配置FreeMarker引擎;配置FreeMarker参数;)_第6张图片


三:【在Spring MVC中实际使用FreeMarker】测试;

1.创建FreeMarkerController,test.ftl:用于演示;

SpringMVC入门与数据绑定13:Spring MVC整合FreeMarker;( 引入依赖;配置FreeMarker引擎;配置FreeMarker参数;)_第7张图片

FreeMarkerController:

package com.imooc.springmvc.controller;

import com.imooc.springmvc.entity.User;
import org.springframework.stereotype.Controller;
import org.springframework.web.bind.annotation.GetMapping;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.servlet.ModelAndView;

@Controller
@RequestMapping("/fm")
public class FreeMarkerController {

    @GetMapping("test")
    public ModelAndView showTest() {
        ModelAndView mav = new ModelAndView();
        mav.setViewName("/test");//因为我们已经把FreeMarker为默认模板引擎了,所以我们在跳转的时候就可以
        User user = new User();
        user.setUsername("zhangsan");
        mav.addObject("u", user);
        return mav;
    }
}

test.ftl:

${u.username}

说明:

(1)关于跳转的进一步说明;

SpringMVC入门与数据绑定13:Spring MVC整合FreeMarker;( 引入依赖;配置FreeMarker引擎;配置FreeMarker参数;)_第8张图片

(2)有关FreeMarker的内容,如有需要可以快速参考【(5)常用功能与过滤器、监听器、FreeMarker;】中的内容;

SpringMVC入门与数据绑定13:Spring MVC整合FreeMarker;( 引入依赖;配置FreeMarker引擎;配置FreeMarker参数;)_第9张图片

此时,还不能直接运行;还是那个容易忘记的点:我们引入新的依赖后,需要及时把这个依赖添加到发布中去;

如有需要可以参考:附加:IDEA的Artifacts;(这篇博客,以后有了更深的理解时,随时补充……)

2.容易忘记的一个点:将新引入的依赖,添加到发布中去;

SpringMVC入门与数据绑定13:Spring MVC整合FreeMarker;( 引入依赖;配置FreeMarker引擎;配置FreeMarker参数;)_第10张图片

SpringMVC入门与数据绑定13:Spring MVC整合FreeMarker;( 引入依赖;配置FreeMarker引擎;配置FreeMarker参数;)_第11张图片

SpringMVC入门与数据绑定13:Spring MVC整合FreeMarker;( 引入依赖;配置FreeMarker引擎;配置FreeMarker参数;)_第12张图片

SpringMVC入门与数据绑定13:Spring MVC整合FreeMarker;( 引入依赖;配置FreeMarker引擎;配置FreeMarker参数;)_第13张图片

SpringMVC入门与数据绑定13:Spring MVC整合FreeMarker;( 引入依赖;配置FreeMarker引擎;配置FreeMarker参数;)_第14张图片

说明:

(1)上面的步骤虽然与【 附加:IDEA的Artifacts;(这篇博客,以后有了更深的理解时,随时补充……)】中的存在差异,但经过实测,其本质是一样的,殊途同归。

3.启动Tomcat,观察效果;

SpringMVC入门与数据绑定13:Spring MVC整合FreeMarker;( 引入依赖;配置FreeMarker引擎;配置FreeMarker参数;)_第15张图片

这样就说明,在我们的Spring MVC项目中,FreeMarker整合成功了,可以愉快的开始后续的开发了。

你可能感兴趣的:(RESTful,拦截器,spring,mvc,java,freemarker)