DataSet类
类名
数据集对象类:com.runqian.report4.dataset.DataSet
类说明
DataSet数据集对象类用来封装数据集中的原始数,存放了报表运算所需的原始数据。需要将抽取的数据用一定的格式在DataSet中存储,数据集对象从本质上是一张虚拟的二维表,第一行定义为“字段名”,第一行后全为数据行。自定义数据集的最终目的是生成数据集并返回,因此必不可少的一步是构造数据集对象。
DataSet提供了多各个构造方法,以及获取和操作数据集数据的方法。
开发者创建的自定义数据集实现类,必须将数据集数据统一构造为DataSet对象。
构造方法
DataSet提供了以下构造方法:
- DataSet(int initRowCap, int colCount, java.lang.String dataSetName)
- DataSet(int colCount, java.lang.String dataSetName)
- DataSet(java.lang.String dataSetName)
参数说明:
- dataSetName - 数据集名称
- colCount - 数据集的列数
- initRowCap - 数据集的行数
开发者可根据实际业务需要,选择相应的构造函数。
通常构造数据集的时候建议可以直接指定差不多的行数、列数,因为不用每次向数据集对象追加行、列时都进行内存分配,可以减少分配内存空间的次数。
常用方法
DataSet的常用方法及其作用如下:
addCol
语法: public void addCol(java.lang.String colName)
参数说明:
- colName - 列名,可以理解成在表达式中引用的字段名
功能说明:添加列,注意,增加列的操作需要在增加行之前完成
返回值 : 空
调用举例: dataSet.addCol(“name”);
addRowData
语法: public java.lang.Object[] addRowData(boolean b)
参数说明:
- b - 是否返回新行
功能说明:添加数据集的行数
返回值 : 返回所加行的数据组
addRowData
语法: public java.lang.Object[] addRowData()
功能说明:添加数据集的行数
返回值 : 返回所加行的数据组
addRow
语法: public Row addRow()
功能说明:添加行
返回值 : 返回新行
调用举例: Row row = dataSet.addRow();
caseSensitive
语法: public boolean caseSensitive()
功能说明:取大小写是否敏感
返回值 : 返回数据集中大小写是否敏感
getDataSetName
语法: public java.lang.String getDataSetName()
功能说明:获取数据集名称
返回值 : 数据集名称,如ds1
调用举例: String dataSetName = dataSet. getDataSetName ();
getColCount
语法: public int getColCount()
功能说明:取得数据集的列数
返回值 : 数据集的列数
调用举例: int colCount = dataSet. getColCount ();
getColNames
语法: public java.lang.String[] getColNames()
功能说明:取列名集
返回值 : 列名集
调用举例: String[] colNames = dataSet. getColNames ();
setColNames
语法: public void setColNames(java.lang.String[] colNames)
参数说明:
- colNames - 列名集
功能说明:设列名集
返回值 : 空
调用举例: String[] colNames = {“id”,”name”,”age”,”sex”} dataset.setColNames(colNames);
isColName
语法: public boolean isColName(java.lang.String colName)
参数说明:
- colName - 指定的列名称
功能说明:判断某字符串是否列名
返回值 : 判断结果,true或者false
getColName
语法: public java.lang.String getColName(int colNo)
参数说明:
- colNo - 列号
功能说明:通过列号取列名
返回值 : 指定列号的列名
调用举例: String colName = dataset.getColName(3);
getColNo
语法: public int getColNo(java.lang.String colName)
参数说明:
- colName - 列名
功能说明:取指定列名的列号
返回值 : 返回列号,如果没有此列名则返回-1
调用举例: int colNo = dataset.getColNo(“name”);
getColTitles
语法: public java.lang.String[] getColTitles()
功能说明:取列标题集
返回值 : 返回列标题集
setColTitles
语法: public void setColTitles(java.lang.String[] colTitles)
参数说明:
- colTitles - 列标题集,字符串组
功能说明:设列标题集,设置时注意要与colNames对应
返回值 : 空
setCaseSensitive
语法: public void setCaseSensitive(boolean sensitive)
参数说明:
- sensitive - 大小写是否敏感
功能说明:设大小写是否敏感
isColTitle
语法: public boolean isColTitle(java.lang.String title)
参数说明:
- title - 初判断的列标题
功能说明:判断某列标题是否存在
返回值 : 判断结果,为true或者false
getColNoFromTitle
语法: public int getColNoFromTitle(java.lang.String title)
参数说明:
- title - 列标题
功能说明:取某列标题的列号
返回值 : 返回列号
调用举例: int colon = dataset.getColNoFromTitle(“name”);
getTitle
语法: public java.lang.String getTitle(int colNo)
参数说明:
- colNo - 列号
功能说明:取某列的标题
返回值 : 返回列标题
调用举例: String colTitle = dataset. getTitle (3);
setColType
语法: public void setColType(int[] types)
参数说明:
- types - 列类型,与java的数据类型同
功能说明:设定列类型,只有生成参数表单时使用
返回值 : 空
getColType
语法: public int[] getColType()
功能说明:获取列类型,只有生成参数表单时使用
返回值 : 数据集的各字段类型
getRowCount
语法: public int getRowCount()
功能说明:取数据集行数
返回值 : 行数
调用举例: int rowNum = dataset.getRowCount();
setData
语法: public void setData(int row,int col, java.lang.Object value)
参数说明:
- row - 行号 col - 列号 value - 位置数据
功能说明:设定某位置数据
返回值: 空
调用举例: dataSet.setData(1,2,Integer(100));
getData
语法: public java.lang.Object getData(int row, int col)
参数说明:
- row - 行号
- col - 列号
功能说明:获得某位置数据
返回值 : 某位置的数据
调用举例: Integer value = dataSetgetData(1,2);
getRowData
语法: public java.lang.Object[] getRowData(int rowNo)
参数说明:
- row - 行号
功能说明:取行数据组
返回值 : 返回行数据组