webwork2 FreeMarker 制作数据列表显示简单实例
2008-02-23 09:53:28来源:互联网 阅读 ()
刚刚接触了FreeMarker觉得不错
做了个小例子
首先建立个数据表里面有username,password两个字段自己随便加几条数据
建立一个Webwork action TestAction.Java
在xwork.XML里加入如下内容
----------------------------------------
<action name="test" class="com.action.TestAction">
<result name="success" type="freemarker">/test.flt</result>
</action>
----------------------------------------
TestAction.java代码如下
--------------------------------------------------
package com.action;
import com.opensymphony.xwork.ActionSupport;
import java.util.*;
import com.ResultGather;
public class TestAction extends ActionSupport
{
private List lis;
private ResultGather rs;
public List getLis()
{
return this.lis;
}
public String execute() throws Exception
{
rs = new ResultGather();
lis = rs.selectRS("select * from userbasedatum");//数据结果我是用List,HashMap封装的,HashMap存的是单条记录
return SUCCESS;
}
}
-------------------------------------------------------------------------------------------------------------------
ResultGather.java代码如下
----------------------------------------------------------
package com;
import conn.DBConnManager;//数据库连接池
import java.sql.*;
import java.util.*;
public class ResultGather
{
private String sql;
public ResultGather()
{
}
public ResultGather(String sqlcom)
{
this.sql=sqlcom;
}
public List selectRS(String sqlStr)
{
this.sql = sqlStr;
return selectRS();
}
public List selectRS() //数据结果在这里装入List和Map
{
List rsall = new ArrayList();
DBConnManager conn = null;
Connection con = null;
Statement stmt = null;
ResultSet rs = null;
Map rsTree;
try{
conn = DBConnManager.getInstance();
con = conn.getConnection("MSSQL");
stmt = con.createStatement();
rs = stmt.executeQuery(sql);
ResultSetMetaData rsmd = rs.getMetaData();
int numberOfColumns = rsmd.getColumnCount();
while(rs.next())
{
rsTree = new HashMap(numberOfColumns);
for(int r=1;r<numberOfColumns 1;r )
{
rsTree.put(rsmd.getColumnName(r),rs.getObject(r));
}
rsall.add(rsTree);
}
}catch(java.lang.Exception ex){
ex.printStackTrace();
}finally{
try{
if(rs!=null)
rs.close();
if(stmt!=null)
stmt.close();
if(conn!=null)
conn.releaseConnection("mssql",con);
}catch(Exception e){
System.out.println(e);
}
}
return rsall;
}
}
-----------------------------------------------------------------------------------------------
test.flt代码如下
-----------------------------------------------------------------------------------------
<#list lis as x>
${x.username},
${x.password}<br>
</#list> //freemarker用法网上有相关介绍
-------------------------------------------------------------------------------------
OK 完成了 没有用到JSP<%.....%>和jsptag
用这个例子做一点修改就可以具有分页用能了
上一篇: Hibernate FAQ
下一篇: 我的J2ME编程练习(8)——Canvas3
标签:
版权申明:本站文章部分自网络,如有侵权,请联系:west999com@outlook.com
特别注意:本站所有转载文章言论不代表本站观点,本站所提供的摄影照片,插画,设计作品,如需使用,请与原作者联系,版权归原作者所有
IDC资讯: 主机资讯 注册资讯 托管资讯 vps资讯 网站建设
网站运营: 建站经验 策划盈利 搜索优化 网站推广 免费资源
网络编程: Asp.Net编程 Asp编程 Php编程 Xml编程 Access Mssql Mysql 其它
服务器技术: Web服务器 Ftp服务器 Mail服务器 Dns服务器 安全防护
软件技巧: 其它软件 Word Excel Powerpoint Ghost Vista QQ空间 QQ FlashGet 迅雷
网页制作: FrontPages Dreamweaver Javascript css photoshop fireworks Flash