`

Struts2&&Velocity

阅读更多
Struts2与Velocity集成很简单,只要在返回类型中声明为:velocity就行了
具体步骤如下
1 将Struts2与Velocity的jar包拷贝到WEB-INF/lib下
Struts2 jar:
http://dl.iteye.com/topics/download/cf0b662c-4513-311a-b0aa-5859c52b4c74
Velocity jar:
http://dl.iteye.com/topics/download/4afc2415-e3fa-3617-aac2-76e08bea157f
2 在WEB.xml声明Struts2的过滤器:
<filter>  
      <filter-name>  
          struts2  
      </filter-name>  
      <filter-class>  
          org.apache.struts2.dispatcher.ng.filter.StrutsPrepareAndExecuteFilter  
      </filter-class>  
  </filter>      
  <filter-mapping>  
      <filter-name>  
          struts2  
      </filter-name>  
      <url-pattern>  
          /*  
      </url-pattern>  
  </filter-mapping>    

3 在Struts.xml声明如下
<?xml version="1.0" encoding="UTF-8" ?>  
<!DOCTYPE struts PUBLIC  
    "-//Apache Software Foundation//DTD Struts Configuration 2.0//EN"  
    "http://struts.apache.org/dtds/struts-2.0.dtd">        
<struts>  
    <package name="hello" extends="struts-default" namespace="/">        
        <action name="myVelocity" class="web.VelocityAction">  
            <result type="velocity">/templates/demo.vm</result>  
        </action>  
   </package>   
</struts> 

一 环境:Win7 64 + Eclipse3.7 + Tomcat6 + JDK1.6
二 各页面代码如下:
1 index.jsp
 <a href="<s:url action="myVelocity"/>">Velocity</a> <br>

2 demo.vm与Velocity之WEB(Object,List,Map)
http://liuzidong.iteye.com/blog/1308261是一样的
3 VelocityAction.java
package web;

import java.util.ArrayList;
import java.util.HashMap;
import java.util.List;
import java.util.Map;

import service.UserService;
import bean.User;

import com.opensymphony.xwork2.ActionSupport;

public class VelocityAction extends ActionSupport{   
	
    private static final long serialVersionUID = 1L;      
    private String userName = null;  
    private int userAge = 0;
    private String userBlog = null;
    private User user = new User();
    private List list = new ArrayList();
    private List<User> users = new ArrayList<User>();  
    private Map map = new HashMap();
    private UserService userService = new UserService();
    private Map<String,User> userMap = new HashMap<String,User>(); 
    
    
    public List<User> getUsers() {
		return users;
	}
	public int getUserAge() {
		return userAge;
	}
	public void setUserAge(int userAge) {
		this.userAge = userAge;
	}
	public String getUserBlog() {
		return userBlog;
	}
	public void setUserBlog(String userBlog) {
		this.userBlog = userBlog;
	}
	public User getUser() {
		return user;
	}
	public void setUser(User user) {
		this.user = user;
	}
	public List getList() {
		return list;
	}
	public void setList(List list) {
		this.list = list;
	}
	public Map getMap() {
		return map;
	}
	public void setMap(Map map) {
		this.map = map;
	}
	public UserService getUserService() {
		return userService;
	}
	public void setUserService(UserService userService) {
		this.userService = userService;
	}
	public void setUsers(List<User> users) {
		this.users = users;
	}
	public Map<String, User> getUserMap() {
		return userMap;
	}
	public void setUserMap(Map<String, User> userMap) {
		this.userMap = userMap;
	}
	@Override  
    public String execute() throws Exception {  
		
		userName = "欢迎天涯";  	        
        String userName = "咫尺天涯";  
        int userAge = 30;  
        userBlog = "http://liuzidong.iteye.com/";  
        double money = 3999.89;          
        user =  new User(userAge,userName,userBlog,money,true);          
        
        list.add("天涯");  
        list.add(30);  
        list.add(money);    
        
        map.put("1", "a");  
        map.put("2", "b");  
        map.put("3", "c");   
        
        users.add(new User(userAge,userName,userBlog,money,true));  
        users.add(new User(18,"天涯",userBlog,646.89,true));  
        users.add(new User(32,"jack",userBlog,2323.45,false));    
        
        userMap.put("1",new User(23,"david",userBlog,money,true));  
        userMap.put("2",new User(18,"天涯",userBlog,646.89,true));  
        userMap.put("3",new User(32,"jack",userBlog,2323.45,false));          
        return SUCCESS;  
    }
	public String getUserName() {
		return userName;
	}
	public void setUserName(String userName) {
		this.userName = userName;
	}  	
}  

工程文件见附件
分享到:
评论

相关推荐

    struts2整合velocity

    在Struts2中整合Velocity还需要配置Velocity相关的依赖,确保项目中包含Velocity Engine库,并在Struts2的配置中指定Velocity工具库: ```xml &lt;constant name="struts.action.extension" value=".do"/&gt; ...

    struts1&struts2

    - **Struts2** 的配置文件包括`web.xml`、`struts.xml`、`struts.properties`、`struts-default.xml`、`velocity.properties`和`struts-default.vm`。`web.xml`和`struts.xml`是核心配置文件,其他文件则可选,例如...

    struts2与velocity集成 实例

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

    struts1&&struts2-PPT

    2. **视图渲染**:Struts1通常使用JSP,而Struts2可以使用FreeMarker、Velocity等多种模板技术。 3. **数据绑定**:Struts1使用ActionForm,Struts2使用ValueStack和OGNL(Object-Graph Navigation Language)。 4. ...

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

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

    struts1&2.pdf strutsAPI

    此外,Struts 2还支持Ajax和多种模板技术,如FreeMarker和Velocity,提升了用户体验。 API文档是开发者的重要参考资料,它详细列出了框架提供的类、接口和方法,以及它们的使用方法和注意事项。对于Struts 1,API...

    struts2 velocity

    Struts2是一个流行的Java web应用程序框架,它提供了一种组织和控制MVC(模型-视图-控制器)架构的方式,而Velocity则是Apache软件基金会开发的一个模板引擎,用于生成动态内容。Struts2与Velocity结合使用,可以...

    Struts2+velocity 整合jar包

    Struts2+velocity 整合时所用的jar包 资源目录如下 commons-collections-3.1 commons-digester-2.0 commons-fileupload-1.2.2 commons-lang-2.5 freemarker-2.3.16 ognl-3.0.1 oro-2.0.8 struts2-core-2.2.3.1 ...

    struts2+velocity

    Struts2和Velocity是两种非常重要的Java Web开发框架。Struts2是一个强大的MVC(Model-View-Controller)框架,而Velocity则是一个快速、轻量级的模板引擎,主要用于生成动态网页内容。将两者整合使用,可以充分利用...

    struts2+spring+velocity扩展实例V1版本

    Struts2、Spring和Velocity是Java Web开发中的三个重要框架,它们各自负责应用程序的不同层面,协同工作可以构建出高效、可维护的Web应用。在这个"struts2+spring+velocity扩展实例V1版本"中,我们可以看到这三个...

    Velocity语法以及整合struts2总结

    【Velocity语法以及整合struts2总结】 Velocity是一个开源的Java模板引擎,它是Apache软件基金会的Jakarta项目的一部分。Velocity将HTML代码与业务逻辑分离,使得开发者可以专注于内容和设计,而不用关心数据如何...

    struts2Velocity.zip_velocity

    1. **配置集成**:在Struts2的配置文件(struts.xml)中,需要声明Velocity结果类型,以便Struts2知道如何处理 Velocity模板。通过添加`&lt;result-type&gt;`标签并指定`class`属性为`org.apache.struts2.views.velocity....

    velocity+struts2 demo

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

    Struts2 整合 velocity最简单工程 最少的jar包

    Struts2 和 Velocity 的整合是Java Web开发中常见的技术组合,用于构建动态、高效的Web应用程序。Velocity 是一个基于模板语言的轻量级视图层框架,而Struts2 是一个强大的MVC(Model-View-Controller)框架。将这...

    mongo集成spring struts2 json velocity

    在"mongo集成spring struts2 json velocity"这个项目中,我们将看到如何将这些技术整合到一起,创建一个功能丰富的Web应用程序。 首先,MongoDB的集成意味着项目会利用其NoSQL特性和文档存储的优势。Spring Data ...

    Struts2+Spring+Velocity项目

    Struts2、Spring和Velocity是Java Web开发中的三个重要框架,它们共同构建了一个高效、灵活且可扩展的应用程序架构。让我们深入探讨这三个组件以及如何在项目中整合它们。 **Struts2** 是一个基于MVC(Model-View-...

    struts2+Velocity替换jsp项目源码

    Struts2和Velocity是两种广泛应用于Java Web开发的技术。Struts2是一个强大的MVC(Model-View-Controller)框架,而Velocity则是一个模板引擎,它专注于视图层的呈现,可以替代传统的JSP(JavaServer Pages)来实现...

    Struts2+velocity jar

    在"Struts2+velocity jar"这个压缩包中,可能包含了Struts2和Velocity相关的库文件,如struts2-core.jar、velocity.jar等,这些jar文件是运行基于Struts2和Velocity的Java Web应用所必需的。使用这些库,开发者可以...

    struts2包&lt;jar&gt;

    3. **结果类型(Result Types)**:Struts2支持多种结果类型,如JSP、FreeMarker、Velocity等,这使得视图层的实现更加多样化。通过定义结果类型,可以灵活地控制响应的生成。 4. **插件支持**:Struts2拥有丰富的...

Global site tag (gtag.js) - Google Analytics