`
piperzero
  • 浏览: 3553629 次
  • 性别: Icon_minigender_1
  • 来自: 杭州
文章分类
社区版块
存档分类
最新评论

关于webwork+freemarker的简单实例

 
阅读更多

关于webwork+freemarker的简单实例

action类:

public class TestAction extends CoreActionSupport implements BaduObjectLoader {

public List getUsers() {
return users;
}
private List users;


public String execute() {

List users_=new ArrayList();

BigDecimal amount1 = new BigDecimal(Double.toString(99999999.66));
BigDecimal amount2 = new BigDecimal(Double.toString(88888888.77));
BigDecimal amount3 = new BigDecimal(Double.toString(77777777.88));

TopInUser u1=new TopInUser();
u1.setCount(10002);
u1.setNickname("zhangsan");
u1.setUid(123);
u1.setAmount(amount1);


TopInUser u2=new TopInUser();
u2.setCount(10003);
u2.setNickname("zhangsan");
u2.setUid(123);
u2.setAmount(amount2);

TopInUser u3=new TopInUser();
u3.setCount(1044);
u3.setNickname("zhangsan444");
u3.setUid(5555);
u3.setAmount(amount3);

users_.add(u1);
users_.add(u2);
users_.add(u3);

users=users_;


return SUCCESS;
}
public String loadObjects() throws Exception {
// TODO Auto-generated method stub
return SUCCESS;
}




}


实体类:

public class TopInUser {


private long uid; //用户id
private int count; //数量
private String nickname; //用户昵称
private java.math.BigDecimal amount; //金额

public java.math.BigDecimal getAmount() {
return amount;
}
public void setAmount(java.math.BigDecimal amount) {
this.amount = amount;
}


public String getNickname() {
return nickname;
}
public void setNickname(String nickname) {
this.nickname = nickname;
}
public long getUid() {
return uid;
}
public void setUid(long uid) {
this.uid = uid;
}
public int getCount() {
return count;
}
public void setCount(int count) {
this.count = count;
}


}


webwork配置文件:


<action name="test" class="com.guagua.vas.top.action.TestAction">
<result name="success" type="freemarker">/test/index.html</result>
</action>


注意属性:type="freemarker" 表示 视图采用freemarker来显示数


官方推荐为模板文件后缀为ftl,其他后缀也可以 这里为html

下面看index.html:


<html>
<body>

<h1>webwork freemarker demo</h1>

<br/>

total: ${users?size} <br/><br/>

<#list users as user>
<li>
${user_index+1}---------- ${user.uid?c}-${user.count?c}-${user.nickname}---${user.amount?c}
</li>
</#list>

<h1>webwork freemarker demo</h1>


<#list users as user>
<li>
${user_index+1}---------- ${user.uid?c}-${user.count?c}-${user.nickname?substring(0,5)?trim?upper_case}---${user.amount?c}
</li>
</#list>

<hr/>

get first object: <br/>
first : ${users?first.uid?c} <br/><br/>

get last object: <br/>
last : ${users?last.uid?c} <br/><br/>





<hr/>


<#list users as user>


<#if user_index=0>
<li>
第一 ${user_index+1}---------- ${user.uid?c}-${user.count?c}-${user.nickname?substring(0,5)?trim?upper_case}---${user.amount?c}
</li>

</#if>

<#if user_index=1>
<li>
第二 ${user_index+1}---------- ${user.uid?c}-${user.count?c}-${user.nickname?substring(0,5)?trim?upper_case}---${user.amount?c}
</li>

</#if>

<#if user_index=2>

<#break>
<li>
第三 ${user_index+1}---------- ${user.uid?c}-${user.count?c}-${user.nickname?substring(0,5)?trim?upper_case}---${user.amount?c}
</li>

</#if>




</#list>

<hr/>




<#list users as user>


<#assign i = user_index>

${i}

<#switch i>

<#case 0>
<li>
${user_index+1}---------- ${user.uid?c}-${user.count?c}-${user.nickname?substring(0,5)?trim?upper_case}---${user.amount?c}
</li>
<#break>
<#case 1>
<li>
${user_index+1}---------- ${user.uid?c}-${user.count?c}-${user.nickname?substring(0,5)?trim?upper_case}---${user.amount?c}
</li>
<#break>
<#case 2>
<li>
${user_index+1}---------- ${user.uid?c}-${user.count?c}-${user.nickname?substring(0,5)?trim?upper_case}---${user.amount?c}
</li>
<#break>
<#default>

</#switch>


</#list>


</body>
</html>


访问:


http://www.test.com/test.jspa

输出结果:

分享到:
评论

相关推荐

    struts2+hibernate+freemarker项目实例

    这个"struts2+hibernate+freemarker"项目实例是将这三个框架集成到一起,构建了一个完整的Web应用程序。 **Struts2** 是一个强大的MVC框架,它基于Action和Result的设计模式,负责处理用户的请求,并将其转发到相应...

    webwork+spring+hibernate+freemarker (A)demo_project

    本源码实例只供学习。。 请一并下载webwork+spring+hibernate+freemarker (A)demo_lib 配合才能使用(此为项目的lib包。。) 请打开mark.txt参考操作

    webwork+spring+hibernate+freemarker (A)demo_lib

    Webwork、Spring、Hibernate和Freemarker是Java Web开发中常用的四大框架,它们各自负责不同的职责,协同工作可以构建出高效、灵活的企业级应用。在这个"A" demo项目中,它们被整合在一起,提供了完整的MVC(Model-...

    webwork+Spring+Ibatis

    webwork+Spring+ibatis 此为webwork+Spring+ibatis+freemarker 源码实例 因为包大,只好分开。。请一并下载webwork+Spring+ibatis_lib放入些实例中,,才能运行! 解压后,请参考mark.txt文件操作,即可!

    spring+ibatis+webwork框架搭配

    ### Spring+Ibatis+WebWork框架搭配详解 在软件开发领域,选择合适的开发框架对于项目的成功至关重要。本文将深入探讨如何结合使用Spring、Ibatis(现称为MyBatis)以及WebWork这三个流行的Java开发框架来构建高效...

    webwork简单实例及说明

    WebWork 是一个由 OpenSymphony 开发的 ...通过实践上述的WebWork简单实例,你可以开始了解WebWork的工作原理和流程,进一步深入学习WebWork的高级特性,如拦截器、AOP、国际化、异常处理等,从而提升你的Web开发技能。

    freemarker(语法+实例)

    以下是关于Freemarker语法和实例的详细讲解: 1. **概念** - **Sequence**:序列,类似于Java中的List、数组,存储非键值对的数据集合。 - **Hash**:键值对集合,对应于Java中的Map,存储键值对数据。 - **...

    Java Web struts1.0+2.0篇章实例

    接下来,我们转向Struts 2.0,它是Struts 1.0的后续版本,但实际上是Struts 1.0和WebWork框架的融合。Struts 2.0在设计上更加灵活,提供了更强大的功能和更好的用户体验。它引入了拦截器(Interceptor)的概念,允许...

    webwork 实例

    WebWork实例是一个非常适合初学者的教程,它允许学习者在现有基础上扩展自己的业务功能,实践并理解MVC框架的工作原理。 在WebWork中,"Model"负责处理应用程序的数据和业务逻辑,通常是由JavaBeans或POJO(Plain ...

    WebWork2.0讲解说明

    WebWork2.0是一款基于Java的企业级Web应用框架,它为开发者提供了强大的MVC(Model...提供的`WebWork2.ppt`文件应包含详细的PPT讲解,可以帮助读者更直观地了解WebWork2.0的各个方面,包括概念、配置实例、最佳实践等。

    Webwork2开发指南

    Webwork2 使用JSP或FreeMarker等模板引擎作为视图层。开发者可以在模板中插入动态内容,如Java表达式和控制结构,以生成HTML或其他格式的输出。 **7. 框架配置** Webwork2 的配置主要通过XML文件完成,包括action...

    webwork中文参考手册

    “webwork中文参考手册”很可能详细讲解了上述概念,并配有实例和代码示例,帮助初学者逐步理解并掌握WebWork的使用。在学习过程中,除了阅读手册,还建议动手实践,结合实际项目加深理解,以便更好地应用WebWork...

    webwork详细讲解.doc

    为了更好地理解WebWork的使用方式,我们可以通过一个简单的“Hello World”示例来进行实践: 1. **创建Action**:定义一个Action类,例如`HelloAction`,并实现相应的业务逻辑方法。 2. **配置Action**:在`webwork...

    spring+hibernate+webwork相关配置

    标题“spring+hibernate+webwork相关配置”涉及到的是一个经典的Java Web开发技术栈,主要包括Spring框架、Hibernate持久化框架以及WebWork(或者可能是Struts2,因为WebWork后来演变成了Struts2)。这些技术在早期...

    webwork中文 webwork中文参考 webwork中文资料 webwork学习资料

    WebWork则构建于Xwork之上,专注于处理HTTP请求和响应,通过ServletDispatcher进行请求处理和映射,支持多种视图表示技术如JSP、Velocity、FreeMarker等。 #### WebWork安装与HelloWorld示例 在开始开发之前,首先...

    webwork应用

    Lightbody可能是一个特定的WebWork应用实例或者是项目的名字。这个目录中应该包含了用Java编写的控制器、模型、视图以及相关的辅助类。开发者通常会在这个目录下找到以下结构: 1. **控制器(Controllers)**: 这些...

    webwork教程很好的学习教程

    ### WebWork教程知识点详解 #### 一、WebWork框架简介 **WebWork**是一个由OpenSymphony组织开发的Java Web框架,它采用了Model-View-Controller(MVC)设计模式,旨在实现组件化和代码重用。WebWork的最新版本为...

    webwork学习资料

    当请求到达时,WebWork会根据配置找到相应的Action方法执行,并将请求参数绑定到Action实例的属性上。 4. **Action介绍** 动作有两种主要类型:Field-Driven Action 和 Model-Driven Action。Field-Driven Action...

    webworkDemo.rar_webwork_webwork2

    4. **Value Stack(值栈)**:值栈是WebWork2中的一个核心概念,它存储了Action实例和其他对象,这些对象可以通过OGNL(Object-Graph Navigation Language)表达式在视图层访问。 5. **Request/Session/...

    webwork2.1 spring

    4. **Action管理**:Spring可以管理WebWork的动作实例,包括创建、初始化、销毁等生命周期过程,这样可以避免在WebWork中手动管理对象的复杂性。 5. **ActionContext集成**:WebWork的ActionContext可以与Spring的...

Global site tag (gtag.js) - Google Analytics