一. 前段目录结构如下架构如下:

  

二. freemarker文件配置

  在 web.xml 文件中指定 spring 配置文件的位置

  

三. 配置springmvc-servlet.xml文件

  1)配置自动扫描包 -- 能读取到@Controller相关java包;

  2)默认的注解映射的支持 -- 读取静态文件;

  3)设置freemarker 的配置文件;

  4)设置对静态资源文件的访问;  

<?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:mvc="http://www.springframework.org/schema/mvc"
xsi:schemaLocation="http://www.springframework.org/schema/beans
http://www.springframework.org/schema/beans/spring-beans.xsd
http://www.springframework.org/schema/context
http://www.springframework.org/schema/context/spring-context.xsd
http://www.springframework.org/schema/mvc
http://www.springframework.org/schema/mvc/spring-mvc.xsd"> <!-- 配置自动扫描的包 -->
<context:component-scan base-package="com.ajs"></context:component-scan>
<!-- 默认的注解映射的支持 -->
<mvc:annotation-driven /> <!-- freemarker 的配置文件 -->
<bean id="freemarkerConfig" class="org.springframework.web.servlet.view.freemarker.FreeMarkerConfigurer">
<property name="templateLoaderPath" value="/WEB-INF/views"/>
</bean>
<!-- freemarker 配置视图解析器 -->
<bean id="viewResolver" class="org.springframework.web.servlet.view.freemarker.FreeMarkerViewResolver">
<property name="cache" value="true"/>
<property name="prefix" value=""/>
<property name="suffix" value=".ftl"/>
</bean> <!-- 对静态资源文件的访问(cache-period的作用暂时不知道) -->
<mvc:resources mapping="/images/**" location="/META-INF/resources/images/" cache-period="31556926" />
<mvc:resources mapping="/js/**" location="/META-INF/resources/js/" cache-period="31556926" />
<mvc:resources mapping="/css/**" location="/META-INF/resources/css/" cache-period="31556926" /> </beans>

  上述配置完成之后,在项目中可以访问到对应目录下的静态资源(css/js/images/ftl等)

四. 配置spring.ftl对于读取静态资源

  在webmvc对应的目录下copy出对应的spring.ftl文件,放在我们自己的项目中(也可以不copy设置好对应路径直接使用),如下所示:

  

五. 在 ftl文件中使用静态资源,如下给出示例文件  

<#import "../spring.ftl" as spring/> <!-- 找到spring.ftl的相对路径-->
<!DOCTYPE html>
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<title>success</title> <link rel="stylesheet" type="text/css" href="<@spring.url '/css/default.css'/>"/>
<script type="text/javascript" src="<@spring.url '/js/jquery-1.12.3.min.js'/>"></script>
</head> <body class="bg">
<h4> success page</h4>
<a href="../index">Index</a>
<img src = "<@spring.url '/images/pig.png'/>"/>
<button id="chgBg">chgBg</button>
</body> <script type="text/javascript">
$(document).ready(function(){
$("#chgBg").click(function(){
$('body').css("background-color","yellow");
});
});
</script>
</html>

  此时 freemarker & 静态资源整合即完成;

SpringMVC-Spring-Hibernate项目搭建之三-- freemarker & 静态资源整合的更多相关文章

  1. JAVA WEB SpringMVC+Spring+hibernate 框架搭建【转】

    http://my.oschina.net/Thinkeryjgfn/blog/158951

  2. Maven搭建springMVC+spring+hibernate环境

    这次不再使用struts2做控制器,采用spring自己的springMVC框架实现. 首先,改写pom.xml文件,不需要struts2的相关jar了. pom.xml <project xm ...

  3. Springmvc+Spring+Hibernate搭建方法及实例

    Springmvc+Spring+Hibernate搭建方法及实例  

  4. Springmvc+Spring+Hibernate搭建方法

    Springmvc+Spring+Hibernate搭建方法及example 前面两篇文章,分别介绍了Springmvc和Spring的搭建方法,本文再搭建hibernate,并建立SSH最基本的代码 ...

  5. SpringMVC+Spring+Hibernate整合开发

    最近突然想认真研究下java web常用框架,虽然现在一直在用,但实现的整体流程不是很了解,就在网上搜索资料,尝试自己搭建,以下是自己的搭建及测试过程. 一.准备工作: 1/安装并配置java运行环境 ...

  6. SpringMVC+Spring+Hibernate的小样例

    Strusts2+Spring+Hibernate尽管是主流的WEB开发框架,可是SpringMVC有越来越多的人使用了.确实也很好用.用得爽! 这里实现了一个SpringMVC+Spring+Hib ...

  7. SSH(Struts2+Spring+Hibernate)框架搭建流程<注解的方式创建Bean>

    此篇讲的是MyEclipse9工具提供的支持搭建自加包有代码也是相同:用户登录与注册的例子,表字段只有name,password. SSH,xml方式搭建文章链接地址:http://www.cnblo ...

  8. Spring MVC 项目搭建 -2- 添加service ,dao,junit

    Spring MVC 项目搭建 -2- 添加service ,dao,junit 1.dao public class Hero { private String name; public Strin ...

  9. Spring MVC 项目搭建 -1- 创建项目

    Spring MVC 项目搭建 -1- 创建项目 1.创建 Dynamic Web project (SpringDemo),添加相关jar包 2.创建一个简单的controller类 package ...

随机推荐

  1. is null 和=null的区别

    数据库中 null 表示 不可知,不确定 所以 判断都用 字段 is null的方式进行判断 而 = null .<> null 的判断结果,仍然是不可知,不确定,所以 不会返回任何结果. ...

  2. core文件介绍

    原文链接:http://team.eyou.com/?p=27 如有侵犯您的版权,请联系windeal12@qq.com linux下,产生core文件,和不产生core文件的条件: 当我们的程序崩溃 ...

  3. mac下iterm2快捷方式

    mac下iterm2,一些技巧,做个记录,大部分参考别人的加上自己的补充: 其中option + 左右键来跳转单词还是有问题,结果变为[D[C,等我摸索好了再来补充. 窗口 新建tab:⌘ + t 切 ...

  4. SpringMVC札集(09)——拦截器

    自定义View系列教程00–推翻自己和过往,重学自定义View 自定义View系列教程01–常用工具介绍 自定义View系列教程02–onMeasure源码详尽分析 自定义View系列教程03–onL ...

  5. 条件和循环(More Control Flow Tools)

    1.if语句 >>>a=7 >>> if a<0: ... print 'Negative changed to zero' ... elif a==0: . ...

  6. window.inner 兼容IE8

    window.getHeight = function() {     if (window.innerHeight != undefined) {         return window.inn ...

  7. tableau-基本函数

    一.数据术语 维度——包含诸如文本和日期等类别数据的字段. 度量——包含可以聚合的数字的字段. 二.字段图标 Abc  蓝色图标->离散字段 #     绿色图标->连续字段 =Abc = ...

  8. 在iOS中使用ZBar扫描二维码

    最近在做的项目中需要用到二维码扫描功能,之前在Android中使用过ZXing识别二维码,ZXing也有对应的iOS版本,经过了解,ZBar也是一个常用的二维码识别软件,并分别提供了iOS和Andro ...

  9. 《selenium2 python 自动化测试实战》(13)——上传文件

    看代码: # coding: utf-8 from selenium import webdriver from time import sleep driver = webdriver.Firefo ...

  10. 服务器上通过FTP共享文件夹

    近日,公司某服务器共同操作的人员增多,而我只需访问及替换某些文件,故想到共享文件夹. 在IIS中建立ftp站点,添加虚拟目录(可多个,对应不同文件夹),设置允许访问的用户(添加用户,见在IIS上搭建F ...