Dorado 5 : 4.6.ResultSet导入 (T22)

概述

Dataset提供了很大的灵活性,可以通过VO导入,也可以通过Resultset导入,本节就讲述如何把Result中的数据导入到Dataset 中,并在DataTable中显示出来。本例的示例链接如下:

 

准备工作

新建一工程resultset,并且配置好数据库,具体步骤参考3.1.2节。

开发步骤

添加Dataset

步骤1:新建一Common ViewModel,文件名为ResultSet。
步骤2:添加一SqlDataset,属性如下:

属性

id

datasetResultset

pageSize

10

 

添加DatasetListener

步骤1:选择添加的,然后点击Open Listener,位置如下:

步骤2:弹出对话框,选择是,截图如下:

步骤3:选择方法beforeLoadData方法,如下图所示:

步骤4:编辑DatasetListener代码如下:

import com.bstek.dorado.data.*;
import com.bstek.dorado.common.*;
import java.util.Date;
import com.bstek.dorado.common.*;
import com.bstek.dorado.data.*;
import com.bstek.dorado.view.*;
import com.bstek.dorado.view.data.*;
import com.bstek.dorado.view.control.*;
import java.sql.Connection;
import java.sql.ResultSet;
import java.sql.Statement;
import com.bstek.dorado.data.db.DBDataset;
/**
 * ResultSet_datasetResultsetListener
 */
public class ResultSet_datasetResultsetListener extends AbstractDatasetListener {
    public boolean beforeLoadData(Dataset dataset) throws Exception {
        Transaction transaction = TransactionManager.getTransaction();
        Connection connection = transaction.getConnection(null);
        try {
            Statement st = connection.createStatement();
            ResultSet rs = st.executeQuery("SELECT * FROM employee");
            ((DBDataset) dataset).load(rs);
            rs.close();
            st.close();
        } finally {
            connection.close();
        }
        return true;
    }
}

 

添加DataTable和PagePolit

步骤1:添加一DataTable,属性设置如下:

属性

id

tableResultset

dataset

datasetResultset

width

100%

步骤2:添加一PagePolit,属性设置如下:

属性

id

pagepilotResultset

dataset

datasetResultset

 

创建Jsp页面

生成Jsp页面以后再编辑一下布局,最后结果如下:

<%@ page contentType="text/html; charset=UTF-8" %> 
<%@ taglib uri="http://www.bstek.com/dorado" prefix="d" %> 
 <html> 
 <head> 
 <title></title> 
 </head> 
 <body> 
 <d:View config="ResultSet"> 
 <d:PagePilot id="pagepilotResultset" /> 
 <d:DataTable id="tableResultset" /> 
 </d:View> 
 </body> 
 </html>

 

查看运行效果

启动服务器后,浏览效果如下:

知识点

本章节的知识点主要是DatasetListener的原理以及使用。DatasetListener主要用于对Dataset事件的监听并作出相应的相应,比如LoadData、CreateFields、UpdateData等事件。关于DatasetListener,可以参考《Dorado 5 用户指南 v1.1》的5.13节。