`

spring3.2+velocity 实例

阅读更多
Velocity,名称字面翻译为:速度、速率、迅速,用在Web开发里.Velocity是一种Java模版引擎技术,该项目由Apache提出,由另外一种引擎技术Webmacro引深而来。那什么是官方的Velocity定义呢?Apache对它的定义是:一种基于Java的模板引擎,但允许任何人使用简单而强大的模板语言来引用定义在Java代码中的对象.

程序代码在附件压缩包中:boce-all-velocityweb.zip

1下载依赖包配置文件在附件中

2.设置layout-servlet.xml 文件
<bean id="velocityConfig"
class="org.springframework.web.servlet.view.velocity.VelocityConfigurer">
<property name="resourceLoaderPath" value="/views/velocity/" />
<property name="configLocation" value="classpath:velocity.properties" /> <!-- velocity配置路径 -->

<!-- <property name="velocityProperties"> <props> <prop key="resource.loader">velocity.properties</prop>
<prop key="file.resource.loader.class"> org.apache.velocity.runtime.resource.loader.FileResourceLoader
</prop> <prop key="file.resource.loader.path">/WEB-INF/velocity</prop> <prop
key="file.resource.loader.cache">false</prop> </props> </property> -->
</bean>


<!-- View resolvers can also be configured with ResourceBundles or XML files.
If you need different view resolving based on Locale, you have to use the
resource bundle resolver. -->
<bean id="viewResolver"
class="org.springframework.web.servlet.view.velocity.VelocityViewResolver">
<property name="cache" value="false" />
<property name="prefix" value="" />
<property name="suffix" value=".vm" />
<property name="contentType">
<value>text/html;charset=UTF-8</value>
</property>

<!-- 使用springMacro、使用servlet的对象 -->
<property name="exposeSpringMacroHelpers" value="true" />
<property name="exposeRequestAttributes" value="true" />
<property name="exposeSessionAttributes" value="true" />


<!-- spring的日期格式化 -->
<property name="dateToolAttribute" value="dateTool" />

<!-- velocity toolbox -->
<property name="toolboxConfigLocation" value="/WEB-INF/vmtools/toolbox.xml" />

</bean>



web.xml文件

<servlet>
<servlet-name>layout</servlet-name>
<servlet-class>org.springframework.web.servlet.DispatcherServlet
</servlet-class>
<load-on-startup>2</load-on-startup>
</servlet>

<servlet-mapping>
<servlet-name>layout</servlet-name>
<url-pattern>*.htm</url-pattern>
<url-pattern>*.do</url-pattern>
<url-pattern>*.json</url-pattern>
<url-pattern>*.html</url-pattern>
<url-pattern>*.vm</url-pattern>
</servlet-mapping>


3.实现代码:
package boce.demo.controller;

import org.springframework.stereotype.Controller;
import org.springframework.ui.Model;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RequestMethod;

@Controller
@RequestMapping(value = "/demo")
public class DemoVelocity {
// Logger logger = LoggerFactory.getLogger(VelocityDemo.class);
@RequestMapping(value = "/welcome")
public String index(Model model) throws Exception {
model.addAttribute("name", "highkgao");

model.addAttribute("age", 20);

System.out.println(model.toString());

return "welcome";
}



@RequestMapping(value = "/test.do")
public String test(Model model) throws Exception {
model.addAttribute("name", "highkgao");
System.out.println(model.toString());
return "index";
}


@RequestMapping(value="/autoBind", method={RequestMethod.GET})
  public String autoBindLogin(Model model){
      model.addAttribute("accountmodel", new AccountModel());
      return "login";
  }


@RequestMapping(value="/autoBind2", method={RequestMethod.POST})
    public String autoBindResult(Model model,AccountModel am){
        model.addAttribute("accountmodel",am );
        return "autoBindResult";
    }

}


运行结果:
运行1



运行2



运行3





  • 大小: 33.4 KB
  • 大小: 23.5 KB
  • 大小: 20.3 KB
分享到:
评论

相关推荐

    SpringMVC+MyBatis+CXF+Velocity可运行实例

    2):采用spring3.2作为bean容器管理,springMVC处理请求转发,Velocity进行页面渲染,Mybatis作为数据持久层。CXF作为同步通信机制。 3):数据库进行加密访问。 4):注解的使用。 5):Vecity模板引擎页面渲染...

    Spring-Reference_zh_CN(Spring中文参考手册)

    3.2.3.2. 实例化bean 3.2.4. 使用容器 3.3. 依赖 3.3.1. 注入依赖 3.3.1.1. Setter注入 3.3.1.2. 构造器注入 3.3.1.3. 一些例子 3.3.2. 构造器参数的解析 3.3.2.1. 构造器参数类型匹配 3.3.2.2. 构造器参数的索引 ...

    Spring中文帮助文档

    3.2. 基本原理 - 容器和bean 3.2.1. 容器 3.2.2. 实例化容器 3.2.3. 多种bean 3.2.4. 使用容器 3.3. 依赖 3.3.1. 注入依赖 3.3.2. 依赖配置详解 3.3.3. 使用depends-on 3.3.4. 延迟初始化bean 3.3.5. 自动...

    spring chm文档

    3.2. 容器和bean的基本原理 3.2.1. 容器 3.2.2. 实例化容器 3.2.3. 多种bean 3.2.4. 使用容器 3.3. 依赖 3.3.1. 注入依赖 3.3.2. 构造器参数的解析 3.3.3. bean属性及构造器参数详解 3.3.4. 使用depends-on...

    Spring 2.0 开发参考手册

    3.2. 容器和bean的基本原理 3.2.1. 容器 3.2.2. 实例化容器 3.2.3. 多种bean 3.2.4. 使用容器 3.3. 依赖 3.3.1. 注入依赖 3.3.2. 构造器参数的解析 3.3.3. bean属性及构造器参数详解 3.3.4. 使用depends-on...

    Spring API

    3.2. 基本原理 - 容器和bean 3.2.1. 容器 3.2.2. 实例化容器 3.2.3. 多种bean 3.2.4. 使用容器 3.3. 依赖 3.3.1. 注入依赖 3.3.2. 依赖配置详解 3.3.3. 使用depends-on 3.3.4. 延迟初始化bean 3.3.5. 自动...

    S2SH 框架所有jar包

    S2SH框架是Java Web开发中一种经典的整合框架,由Struts 2、Spring 2.0和Hibernate 3.2三个组件组成。这个框架集合了MVC(Model-View-Controller)架构、依赖注入(Dependency Injection)以及对象关系映射(Object-...

    lightsword:使用SpringBoot,Scala开发的自动化测试平台

    《 Spring Boot开发:从0到1》工程实例:LightSword 使用SpringBoot,Scala开发的自动化测试平台 书籍参考 《 Spring Boot开发:从0到1》 第一部分Spring Boot基础 1.1 J2EE(Java 2平台企业版)简介 1.2 Java企业级...

    springMvc连接

    - **支持多种视图技术**:不仅支持JSP,还支持Velocity、Thymeleaf等多种视图技术。 - **强大的功能**:包括表单验证、文件上传、国际化支持等。 ### 二、Spring MVC的工作流程 #### 2.1 请求处理流程 1. **前端...

    struts基础资料相关文档

    为了管理和获取模型组件的实例,通常会使用工厂模式或依赖注入(DI)容器(如Spring容器)。这样可以降低各组件之间的耦合度,提高系统的可维护性和扩展性。 #### 六、视图组件 Struts 2允许使用多种视图技术,...

    Java语言实践教学解析.zip

    Java语言实践教学解析.pdf Java语言,作为世界上...通过以上对Java语言实践教学解析的学习,你将能够熟练掌握Java编程,具备独立开发小型应用的能力,并为进一步深入学习Java EE、Spring框架等高级技术打下坚实基础。

    struts2 权威指南

    除了Struts2之外,还有许多其他的MVC框架,如JSF、Tapestry、Spring MVC等。这些框架各有特点,但Struts2以其丰富的插件生态系统、强大的表单处理能力以及良好的社区支持脱颖而出。 #### 三、MVC模式解析 ##### ...

    starting-struts2-chinese

    - **业务服务/依赖注入**:与Spring等框架集成,实现依赖注入和服务层开发。 - **数据库操作**:与Hibernate等ORM框架结合,实现高效的数据访问。 - **安全**:集成Shiro等安全框架,增强应用的安全性。 - **AJAX**...

Global site tag (gtag.js) - Google Analytics