文档章节

spring整合freemarker的方法

大海
 大海
发布于 2016/07/12 20:43
字数 566
阅读 36
收藏 0

注意:freemarker动态视图处理还是需要模板文件的

<?xml version="1.0" encoding="UTF-8"?>
<beans xmlns="http://www.springframework.org/schema/beans"
	xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:context="http://www.springframework.org/schema/context"
	xmlns:jdbc="http://www.springframework.org/schema/jdbc" xmlns:jee="http://www.springframework.org/schema/jee"
	xmlns:tx="http://www.springframework.org/schema/tx" xmlns:jpa="http://www.springframework.org/schema/data/jpa"
	xmlns:util="http://www.springframework.org/schema/util" xmlns:mvc="http://www.springframework.org/schema/mvc"
	xsi:schemaLocation="
		http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans-3.2.xsd
		http://www.springframework.org/schema/context http://www.springframework.org/schema/context/spring-context-3.2.xsd
		http://www.springframework.org/schema/jdbc http://www.springframework.org/schema/jdbc/spring-jdbc-3.2.xsd
		http://www.springframework.org/schema/jee http://www.springframework.org/schema/jee/spring-jee-3.2.xsd
		http://www.springframework.org/schema/tx http://www.springframework.org/schema/tx/spring-tx-3.2.xsd
		http://www.springframework.org/schema/data/jpa http://www.springframework.org/schema/data/jpa/spring-jpa-1.3.xsd     
		http://www.springframework.org/schema/util http://www.springframework.org/schema/util/spring-util-3.2.xsd
		http://www.springframework.org/schema/mvc http://www.springframework.org/schema/mvc/spring-mvc-3.2.xsd">

		
		<context:property-placeholder location="classpath:system.properties"/>
		
		<util:properties id="sportsUrl" location="classpath:sportsUrl.properties"/>
			
		<mvc:annotation-driven>
			<mvc:message-converters>
				<bean id="stringHttpMessageConverter" 
					class="org.springframework.http.converter.StringHttpMessageConverter">
					<constructor-arg value="UTF-8"/>
				</bean>
				<bean id="gsonHttpMessageConverter" 
					class="org.springframework.http.converter.json.GsonHttpMessageConverter">
				</bean>
			</mvc:message-converters>
		</mvc:annotation-driven>	
			  
        //freemarker视图解析器
		<bean id="freeMarkerViewResolver"
			class="org.springframework.web.servlet.view.freemarker.FreeMarkerViewResolver">
            //设置freemarker解析给页面的contenttype设置为text、html
			<property name="contentType" value="text/html;charset=utf-8"/>	
            //设置模板文件前缀,这个用法和jsp的视图处理有点像
			<property name="prefix" value=""/>
            //设置后缀,为.html
			<property name="suffix" value=".html"/>
            //设置视图处理优先级别,ContentNegotiatingViewResolver级别最高,不过他会将他会让freemarker处理器的优先处理视图映射
			<property name="order" value="2"></property>
		</bean>
		
	 	<bean id="mainViewer" class="org.springframework.web.servlet.view.ContentNegotiatingViewResolver">
	 		<property name="defaultContentType" value="text/html"></property>
	 		<property name="order" value="1"></property>
	 		<property name="viewResolvers">
	 			<list>
                    //设置子处理器集合,只设置一个freemarker处理器即可
	 				<ref bean="freeMarkerViewResolver"/>
				</list>
	 		</property>
		</bean>
		//设置模板文件路径,这里要注意,如果是模板文件夹在classpath下,要加classpath:,如果是本地任意磁盘上,要加file:
        //设置编码为utf-8
		<bean id="freeMarkerConfig" 
			class="org.springframework.web.servlet.view.freemarker.FreeMarkerConfigurer">
			<property name="defaultEncoding" value="utf-8"/>
			<property name="templateLoaderPath" value="file:d:/"></property>
		</bean>
		
</beans>

控制器代码: 

@Controller
public class FreemarkerController {
	
	@RequestMapping("/getInfo")
	public ModelAndView getInfo(){
		ModelAndView view = new ModelAndView("hello");
		Map<String,Object> map = Maps.newHashMap();
		map.put("name", "wqeqwe");
		map.put("date", "dsaljakl");
		view.addAllObjects(map);
		return view;
	}
}

模板文件写法:${name}

最后访问getInfo的结果就是输出 :wqeqwe

© 著作权归作者所有

共有 人打赏支持
大海
粉丝 2
博文 84
码字总数 32431
作品 0
杭州
程序员
JAVAEE——宜立方商城10:使用freemarker实现网页静态化、ActiveMq同步生成静态网页、Sso单点登录系统分析

1. 学习计划 1、使用freemarker实现网页静态化 2、ActiveMq同步生成静态网页 2. 网页静态化 可以使用Freemarker实现网页静态化。 2.1. 什么是freemarker FreeMarker是一个用Java语言编写的模...

kent鹏
08/01
0
0
Spring mvc整合FreeMarker

Spring mvc整合FreeMarker,使用的是Spring mvc 3.2 + FreeMarker 2.3.19,如下所示: 1、新建freemarker.properties,放到src目录下面: 2、在spring配置文件中,加入如下内容: 3、创建Ind...

小99
2014/03/25
0
0
FreeMarker | 取值篇

第一部分:Spring Boot 集成 FreeMarker 1、 需要这些依赖 2、yml 我喜欢 yml,所以删掉 ,新建 3、配置 在 中添加如下配置 4、Controller - View 5、运行效果 第二部分:取值 1、学过 free...

Wenyi_Feng
06/14
0
0
SpringMvc整合Freemarker

1、 新建WebProject,工程名称是SpringFreemarker;然后手动添加jar包,需要的jar包如下: SpringFramework jar包下载地址: http://ebr.springsource.com/repository/app/library/version/d...

游宵
2014/04/23
0
0
在Spring+FreeMarker框架中使用Shiro的Tag标签

目前Freemarker对Shrio的标签还不支持,不过已经有人贡献出来第三方面解决方案,如下: 1、下载shiro-freemarker-tags GitHub地址:https://github.com/jagregory/shiro-freemarker-tags 可以...

zkool
2014/01/19
0
0

没有更多内容

加载失败,请刷新页面

加载更多

Java异常处理最佳实践

总结一些Java异常的处理原则 Java异常处理最佳实践 不要忘记关闭资源 在finally里关闭资源 public void readFile() { FileInputStream fileInputStream = null; File file = new Fil...

yysue
28分钟前
0
0
00.编译OpenJDK-8u40的整个过程

前言 历经2天的折腾总算把OpenJDK给编译成功了,要说为啥搞这个,还得从面试说起,最近出去面试经常被问到JVM的相关东西,总感觉自己以前学的太浅薄,所以回来就打算深入学习,目标把《深入理...

凌晨一点
今天
4
0
python: 一些关于元组的碎碎念

初始化元组的时候,尤其是元组里面只有一个元素的时候,会出现一些很蛋疼的情况: def checkContentAndType(obj): print(obj) print(type(obj))if __name__=="__main__": tu...

Oh_really
昨天
6
2
jvm crash分析工具

介绍一款非常好用的jvm crash分析工具,当jvm挂掉时,会产生hs_err_pid.log。里面记录了jvm当时的运行状态以及错误信息,但是内容量比较庞大,不好分析。所以我们要借助工具来帮我们。 Cras...

xpbob
昨天
122
0
Qt编写自定义控件属性设计器

以前做.NET开发中,.NET直接就集成了属性设计器,VS不愧是宇宙第一IDE,你能够想到的都给你封装好了,用起来不要太爽!因为项目需要自从全面转Qt开发已经6年有余,在工业控制领域,有一些应用...

飞扬青云
昨天
4
0

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部