`

spring MVC中velocity配置

阅读更多
servlet-context.xml中的配置
      <!-- template view -->
<bean id="velocityConfig"
class="org.springframework.web.servlet.view.velocity.VelocityConfigurer">
<property name="resourceLoaderPath" value="/WEB-INF/vm/" />
<property name="velocityProperties">
<props>
<prop key="input.encoding">UTF-8</prop>
<prop key="output.encoding">UTF-8</prop>
<prop key="contentType">text/html;charset=UTF-8</prop>
<prop key="velocimacro.library">common/macro.vm</prop>
</props>
</property>
</bean>
<bean id="velocityViewResolver"
class="org.springframework.web.servlet.view.velocity.VelocityLayoutViewResolver">
<property name="layoutUrl" value="layout/default.vm" />
<property name="cache" value="false" />
<property name="suffix" value=".vm" />
<property name="exposeSpringMacroHelpers" value="true" />
<property name="requestContextAttribute" value="rc"/>
<property name="dateToolAttribute" value="dateTool" />
<property name="numberToolAttribute" value="numberTool" />
<!-- Merge urlBuilderMap to view context for convenience. You can put your tools which must be thread safe. -->
<property name="contentType" value="text/html;charset=UTF-8" />
                 <!--<property name="toolboxConfigLocation" value="/WEB-INF/toolbox.xml"/>可选择-->
</bean>

<bean
class="org.springframework.web.servlet.view.ContentNegotiatingViewResolver">
<property name="defaultContentType" value="text/html" />
<!-- not by accept header -->
<property name="ignoreAcceptHeader" value="true"/>
<!-- by extension -->
<property name="mediaTypes">
<map>
    <entry key="xml" value="application/xml" />
<entry key="json" value="application/json" />
</map>
</property>
<property name="viewResolvers">
<list>
                <ref bean="velocityViewResolver"/>
</list>
</property>
  <property name="defaultViews">
<list>
<!-- for application/json -->
                <bean class="org.springframework.web.servlet.view.json.MappingJacksonJsonView" />
</list>
</property>
</bean>
  
macro.vm内容
#*自定义宏*#

##分页
#macro(showPage $page)
#if($page != "")
<div class="page textR">
#if($page.extInfo&&$page.extInfo.equals("")==false)
<i class="ico-tip"></i>$page.extInfo
#end
每页显示<input id="page-pageSize" class="text w30" type="text" value="$page.pageSize" onKeyup="XUI.form.setPageSize($page.pageSize,this,event);"/>$page.unit,共$page.totalCount$page.unit记录.
#if($page.firstPage == false)
<a class="pre" href="javascript:void(0);" onclick="XUI.form.page($page.previousPage);">上页</a>
<a href="javascript:void(0);" onclick="XUI.form.page(1)">1</a>
#end
#set($pagePos = 2) ##当前页的尾巴长度
#if($page.currentPage>$pagePos+2)
<span>...</span>  ##显示前面的省略号
#end
#foreach($i in [$pagePos..1]) ##增加前面的尾巴
#if($page.currentPage - $i > 1)
#set($pageIndex= $page.currentPage - $i)
<a href="javascript:void(0);" onclick="XUI.form.page($pageIndex)">$pageIndex</a>
#end
#end
<a class="current">$page.currentPage</a>##显示当前页号
#foreach($i in [1..$pagePos]) ##增加后面的尾巴
#if($page.pageCount - $page.currentPage - $i > 0)
#set($pageIndex= $page.currentPage + $i)
<a href="javascript:void(0);" onclick="XUI.form.page($pageIndex)">$pageIndex</a>
#end
#end
#if($page.pageCount - $page.currentPage > $pagePos+1)
<span>...</span>##显示后面的省略号
#end
#if($page.hasNextPage())
<a href="javascript:void(0);" onclick="XUI.form.page($page.pageCount)">$page.pageCount</a>
<a class="next" href="javascript:void(0);" onclick="XUI.form.page($page.nextPage)">下页</a>
#end
#if($page.pageCount > 1)
<a class="pre" href="javascript:void(0);" onclick="XUI.form.showAll($page.totalCount);">显示全部</a>
#end
</div>
#end
#end


##排序
#macro(sorting $obj $field)
#if($obj && $obj.orderField == $field)
class="sorting_$obj.orderFieldType" data-orderFieldType="$obj.orderFieldNextType"
#else
class="sorting" data-orderFieldType="DESC"
#end
data-orderField="$field"
#end
查询list页面分页使用如下:
<!-- 分页栏 -->
#showPage($!{page})

layout/default.vm的内容
$screen_content
分享到:
评论

相关推荐

    spring mvc mybatis velocity 示范

    Spring MVC、MyBatis 和 Velocity 是三个在Java Web开发中广泛应用的开源框架。Spring MVC 是Spring框架的一部分,用于构建高效、灵活的Web应用程序。MyBatis 是一个优秀的持久层框架,它支持定制化SQL、存储过程...

    spring mvc与velocity整合

    在Spring MVC的配置文件(如`spring-mvc.xml`)中,你需要配置VelocityViewResolver,这是Spring MVC用来解析Velocity模板的类。设置其prefix和suffix属性,分别指定视图前缀和后缀,例如: ```xml ...

    spring mvc sitemesh velocity整合

    3. **配置Sitemesh**:在web.xml中配置Sitemesh的Filter,设置装饰器目录和排除不需装饰的URL。Sitemesh Filter会拦截请求并应用页面装饰。 4. **编写Velocity模板**:创建Velocity模板文件,定义页面的结构和动态...

    maven搭建spring mvc velocity+mybatis

    在IT行业中,构建高效、可维护的Web应用是至关重要的,而Maven、Spring MVC、Velocity和MyBatis是实现这一目标的四个关键组件。本文将深入探讨如何使用这些技术来搭建一个完整的Web应用程序。 首先,Maven是Apache...

    基于 Spring Spring MVC Ss Velocity Shiro 的 WeW.zip

    基于 Spring Spring MVC Spring Boot MyBatis Velocity Shiro 的 WeW

    Spring MVC+Maven+Velocity配置实例

    在Spring的配置文件(如`applicationContext.xml`)中,定义视图解析器,通常使用`InternalResourceViewResolver`,并设置前缀和后缀,使得Spring MVC能够找到Velocity模板。 接下来,配置Velocity。在`web.xml`中...

    Maven 整合 Spring mvc + Mybatis + Velocity 的实例

    在我们的实例中,Maven将帮助我们集成Spring MVC、Mybatis和Velocity,并确保所有必要的库都处于正确的位置。 **Spring MVC** Spring MVC是Spring框架的一个模块,专门用于处理Web应用的请求-响应模型。它提供了一...

    Maven + Spring mvc + Mybatis + Velocity 整合实例

    开发者可以学习到如何设置Maven的POM.xml文件来管理所有依赖,如何配置Spring MVC的DispatcherServlet和ApplicationContext,如何定义Mybatis的Mapper接口和XML配置文件,以及如何在Velocity模板中使用数据。...

    Maven + Spring mvc + Mybatis + Velocity +国际化配置 demo

    例如,需要在Spring的配置文件中声明对MVC、Mybatis和Velocity的支持,同时设置国际化配置。在Maven的`pom.xml`中,添加相关库的依赖。在完成配置后,通过Maven构建项目,确保所有组件能够正常工作。 通过这个整合...

    精通Spring MVC4

    配置Spring MVC通常涉及web.xml文件中的DispatcherServlet配置,以及Spring配置文件中定义的Controller、ViewResolver和其他组件。Spring Boot简化了这一过程,通过自动配置和@SpringBootApplication注解可以快速...

    spring3.0 mvc中文实例教程

    6. **Spring主题**:探讨Spring MVC中如何定制和管理视图主题。 7. **Spring3 MVC与Hibernate 3整合**:讲解如何结合Spring MVC和Hibernate进行持久化操作。 通过这些教程,开发者可以全面了解和掌握Spring 3.0 MVC...

    spring mvc

    11. **MVC配置**: 传统的XML配置方式逐渐被Java-based配置和注解配置取代,简化了配置过程,使得Spring MVC应用更易维护。 12. **RESTful风格**: Spring MVC 支持创建RESTful API,通过@RequestMapping配合HTTP动词...

    SpringMVC3+velocity最简单配置例子

    1. **添加依赖**: 在项目中引入SpringMVC和Velocity的相关库,通常包括`spring-webmvc`和`velocity`或者`velocity-tools`。 2. **配置SpringMVC**: 配置`DispatcherServlet`,指定处理器映射器、视图解析器等。对于...

    Spring mvc指南+Spring mvc入门

    本指南将深入探讨 Spring MVC 的核心概念、配置、控制器、数据绑定、视图解析以及实际应用中的最佳实践。 首先,我们来理解 MVC 设计模式。MVC 将应用程序分为三个主要部分:模型(Model)、视图(View)和控制器...

    spring mvc框架源码

    在"web_shop"这个项目中,我们可以看到一个实际的Spring MVC应用示例,可能包含了配置文件、Controller类、视图模板、以及相关的服务和模型类。通过深入研究源码,我们可以更好地理解Spring MVC的运行机制,如何配置...

    Spring MVCSpring MVC基础.ppt

    6. **注解驱动开发**:Spring MVC允许使用注解来简化配置,如`@Controller`、`@RequestMapping`、`@Service`、`@Autowired`等,这些注解可以极大地减少XML配置文件的复杂性,提高代码的可读性和可维护性。...

    Spring3.0MVC 实用教程(高淇)

    通过策略接口,Spring MVC 具有高度可配置性,支持多种视图技术,如 JSP、Velocity、Tiles、iText 和 POI。 Spring MVC 的主要组成部分包括控制器、模型对象、分派器和处理程序对象,这些组件的职责明确,易于定制...

    Spring + Spring MVC + MyBatis + Velocity + MySQL 框架搭建源码

    这是我写的一个Spring + Spring MVC + MyBatis + Velocity + MySQL 框架搭建完整项目,里面包含了所需的全部JAR包已经相关源码,感兴趣的同学可以下载喽。。。 配合我的博客更好哦!

    spring框架的MVC

    通过策略接口,Spring 框架是高度可配置的,而且包含多种视图技术,例如 JavaServer Pages(JSP)技术、Velocity、Tiles、iText 和POI。Spring MVC 框架并不知道使用的视图,所以不会强迫您只使用 JSP 技术。Spring ...

    spring-webmvc5.3.6 jar包.rar

    这个jar文件包含Spring MVC框架相关的所有类。  包含国际化、标签、Theme、视图展现的FreeMarker、JasperReports、Tiles、Velocity、XSLT相关类。  当然,如果你的应用使用了独立的MVC框架,则无需这个JAR文件里的...

Global site tag (gtag.js) - Google Analytics