`
精神分裂
  • 浏览: 29340 次
  • 性别: Icon_minigender_1
  • 来自: 二次元世界
社区版块
存档分类
最新评论

Velocity在Struts 2框架下的应用

阅读更多
Struts 2更是提供了对Velocity和FreeMarker模板引擎的支持。通过以下几个步骤,实现在Struts 2中使用velocity模板。
创建一个Web Project,除了Struts2所必备的包外,还需要引入如下包:velocity-1.4.jar、velocity-dep-1.4.jar、velocity-tools-1.1.jar

在web.xml中不需要配置关于Velocity的Servlet,只配置Struts 2的filter即可。
<web-app version="2.5" 
	xmlns="http://java.sun.com/xml/ns/javaee" 
	xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" 
	xsi:schemaLocation="http://java.sun.com/xml/ns/javaee 
	http://java.sun.com/xml/ns/javaee/web-app_2_5.xsd">
	<filter>
		<filter-name>struts2</filter-name>
		<filter-class>org.apache.struts2.dispatcher.FilterDispatcher</filter-class>
	</filter>
	<filter-mapping>
		<filter-name>struts2</filter-name>
		<url-pattern>/*</url-pattern>
	</filter-mapping>
</web-app>


编写Action代码如下:
public class Velocity_II {
	private String str;
	private List<String> names;
	private List<User> users;
	
	public String execute() {
		this.str = "Use Velocity";
		this.names = getStringData();
		this.users = getObjectData();
		return "success";
	}
	public List<String> getStringData() {
		List<String> list = new ArrayList<String>();
		String name = null;
		for(int i=0;i<20;i++){
			name = "Hoffman "+i+" Name";
			list.add(name);
		}
		return list;
	}
	public List<User> getObjectData() {
		List<User> lusers = new ArrayList<User>();
		for(int i=0;i<5;i++) {
			User user = new User();
			user.setName("中文测试 "+i);
			user.setPhone("1395487"+i);
			user.setAddress("Shop Street "+i);
			lusers.add(user);
		}
		return lusers;
	}
	……省略Geter and Settr Method……
}


在webroot下建立list.vm,内容如下:
<html>
	<head> <title>List Velocity</title> </head>
	<body>
		<b>Use Valocity to Show String:</b> $str &nbsp; ${str}<hr>
		<b>Use Valocity to Show List:</b></br>
		#set($num = 0)
		#set($bool = true)
		#foreach($name in $names)
			#if($bool)
				$name &nbsp;&nbsp;
				#if($num == 4) </br> #end
				#if($num == 9) #set($bool = false) #end
				#set($num = $num + 1)
			#end
		#end <hr>
		<b>Use Valocity to Show List:</b></br>
		#foreach($user in $users)
			$user.name - $user.phone - $user.address </br>
		#end <hr>
	</body>
</html>


在struts.xml配置文件中,需要注意配置result的type,如下:
<struts>
	<constant name="struts.i18n.encoding" value="GBK"/>
	<package name="struts" extends="struts-default">
	    <action name="listVelocity" class="com.mixele.velocityII.Velocity_II">
	        <result name="success" type="velocity">list.vm</result>
	    </action>
    </package>
</struts>

分享到:
评论

相关推荐

    完整的struts2框架应用实例.docx

    Struts2 框架应用实例详解 Struts2 框架是一种基于 Java 语言的 Web 应用程序框架,它提供了一个灵活的和可扩展的架构,以帮助开发者快速构建基于 Web 的应用程序。下面是 Struts2 框架应用实例的详细介绍: 一、...

    velocity+struts2实例,适合开发和整合使用

    Struts2和Velocity是Java Web开发中的两个重要框架,它们在构建动态Web应用程序时发挥着关键作用。Struts2是一个强大的MVC(Model-View-Controller)框架,而Velocity则是一个模板引擎,专注于视图层的呈现。在这个...

    velocity+struts2 demo

    ** Velocity + Struts2 框架整合应用详解** 在Web开发领域,Velocity和Struts2都是备受开发者青睐的开源框架。Velocity是一个基于Java的模板引擎,它将控制逻辑与表现逻辑分离,使得开发者可以专注于内容的呈现,而...

    struts2整合velocity

    Struts2是一个强大的MVC(Model-View-Controller)框架,它在Java Web开发中广泛使用,用于构建可维护、可扩展的Web应用程序。而Velocity则是一个轻量级的模板引擎,它允许开发者将HTML与Java代码分离,使得视图层...

    Struts2框架源码

    Struts2框架是Java Web开发中的一个流行框架,它基于MVC(Model-View-Controller)设计模式,为开发者提供了一种...通过研究源码,不仅可以提升对Struts2的理解,还能帮助你在实际项目中更有效地应用和优化这一框架。

    struts2框架JAR包

    Struts2框架是一款基于MVC(Model-View-Controller)设计模式的开源Java Web应用程序框架,它极大地简化了Java Servlet API的使用,提高了开发效率。这个压缩包包含了两个不同版本的Struts2框架:struts2.0.11和...

    Struts2框架程序示例

    Struts2框架是Java Web开发中的一个重要组成部分,它是一个基于MVC(Model-View-Controller)设计模式的开源框架,旨在简化企业级应用的开发。本示例将深入讲解Struts2框架的核心概念、主要特性以及如何在实际项目中...

    struts2框架详解

    Struts2是Java Web开发中的一款广泛应用的开源MVC框架,它构建在Apache Struts 1的基础上,提供了更为强大的功能和更好的灵活性。Struts2旨在简化Web应用开发,通过将表现层与业务逻辑层解耦,提高了代码的可维护性...

    Velocity+Struts 配置

    Velocity 是一个基于Java的模版引擎。它允许web 页面设计者引用...这个项目完成后,Velocity将为Turbine web 应用程序框架提供模板服务。Velocity+Turbine 方案提供的模板服务将允许web 应用按真正的mvc模式进行开发。

    struts2与velocity集成 实例

    Struts2和Velocity是两种广泛应用于Java Web开发的技术。Struts2是一个强大的MVC(Model-View-Controller)框架,而Velocity则是一个快速、轻量级的模板引擎,主要用于生成动态网页内容。将两者集成可以有效地提高...

    struts2框架做的学生信息查询系统

    Struts2框架是一种基于Model-View-Controller (MVC)设计模式的Java Web应用程序开发框架。它由Apache软件基金会维护,旨在简化Web应用的开发流程,提供更好的控制和解耦,以及增强可测试性。在"学生信息查询系统"这...

    struts2框架基础jar包

    Struts2是一个强大的Java web应用程序开发框架,它基于Model-View-Controller(MVC)设计模式,为开发者提供了构建高效、可扩展且易于维护的Web应用的工具和组件。这个压缩包包含了Struts2框架的基础jar包,这些库是...

    struts2框架jar包

    Struts2框架是Java EE(Java 2 Platform, Enterprise Edition)平台上的一款开源MVC(Model-View-Controller)框架,用于构建动态Web应用程序。它的核心是Action类,它负责处理用户的请求并调用业务逻辑。Struts2...

    Struts2框架

    Struts2框架是Java开发Web应用的一个强大框架,它基于MVC(Model-View-Controller)设计模式,为开发者提供了一种结构化且灵活的方式来构建应用程序。Struts2的出现是为了改进原有的Struts1框架,增加了更多的功能和...

    Struts2框架实例

    在描述中提到的"Structs相关实例"是为了帮助开发者更好地理解和掌握Struts2框架的实际应用。这些实例通常包括配置文件、Action类、视图模板、以及控制器逻辑等组成部分,覆盖了从简单的请求处理到复杂的业务流程控制...

    Struts 2框架

    综上所述,Struts 2框架相比于Struts 1,在设计理念、架构组成、技术实现等方面都有了较大的进步,更加适应现代Web应用的开发需求。无论是从技术的角度还是从社区支持的角度来看,Struts 2都是一款值得学习和使用的...

    Struts2接口文档

    总的来说,Struts2接口文档是学习和使用Struts2框架不可或缺的工具,它能帮助开发者高效地理解和使用框架提供的各种组件和接口,提升开发效率,减少错误,并有助于深入理解MVC模式在实际项目中的应用。通过仔细研读...

    struts2框架jar包.zip

    Struts2框架是一款基于Model-View-Controller(MVC)设计模式的开源Java Web应用程序框架。它由Apache软件基金会维护,旨在简化开发过程并提供一套强大的控制层组件。Struts2以其灵活性、可扩展性和丰富的插件库而受...

    Struts2框架 jar JAVA开发 Struts2.jar架包 Struts2开发实例

    Struts2是一个强大的Java web应用程序框架,用于构建和维护可扩展、结构清晰的MVC(Model-View-Controller)...在实际开发中,理解并熟练掌握以上知识点,能有效提升Struts2框架的应用能力,构建高效、稳定的Web应用。

    Velocity+Struts生成html

    在Java Web开发中,Velocity和Struts是两个非常重要的框架,它们常被用来构建动态网站和企业级应用。Velocity是一个基于模板语言的轻量级视图技术,而Struts则是一个MVC(Model-View-Controller)架构的框架。两者...

Global site tag (gtag.js) - Google Analytics