关于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

 

输出结果:

 

目录
相关文章
|
9月前
|
存储 设计模式 搜索推荐
早期javeweb技术 JSP JDBC JSTJ Servlet BooStrap(下)
早期javeweb技术 JSP JDBC JSTJ Servlet BooStrap(下)
62 1
|
10月前
|
前端开发 Oracle Java
JSF(JavaServer Face)标签库简介(JavaEE)
JSF(JavaServer Faces)是JavaEE框架,用于简化Web应用开发,采用组件驱动方式和MVC模式确保可维护性。主要实现包括PrimeFaces、Apache MyFaces和ICEFaces。JSF通过JCP标准化,Oracle提供了JSF2.2和2.3的实现库。JSF应用涉及UI设计、前后端分离及JavaBean交互。实现过程包括网站结构创建、库文件配置、Tomcat的JSF标签库设置以及启动验证。通过创建JSF页面如hello.xhtml,展示其工作原理。
330 2
|
9月前
|
XML 前端开发 Java
早期javeweb技术 JSP JDBC JSTJ Servlet BooStrap(上)
早期javeweb技术 JSP JDBC JSTJ Servlet BooStrap(上)
52 0
|
10月前
|
XML Java 数据格式
JAVAEE框架之Spring注解
JAVAEE框架之Spring注解
75 0
|
SQL 前端开发 Java
FreeMark简介
FreeMark简介
115 0
|
Java
2022年Servlect课时十六——Filter 与Servlect 的用法相似
2022年Servlect课时十六——Filter 与Servlect 的用法相似
87 0
2022年Servlect课时十六——Filter 与Servlect 的用法相似
|
Java Spring 容器
Spring框架:第九章:Spring整合Web
Spring框架:第九章:Spring整合Web
160 0
Spring框架:第九章:Spring整合Web
|
存储 Java 容器
JSP第五篇【JSTL的介绍、core标签库、fn方法库、fmt标签库】(三)
JSTL作为最基本的标签库,提供了一系列的JSP标签,实现了基本的功能:集合的遍历、数据的输出、字符串的处理、数据的格式化等等!
143 0
JSP第五篇【JSTL的介绍、core标签库、fn方法库、fmt标签库】(三)