- java.lang.Object
-
- javax.sql.rowset.RowSetMetaDataImpl
-
- All Implemented Interfaces:
-
Serializable
,ResultSetMetaData
,Wrapper
,RowSetMetaData
public class RowSetMetaDataImpl extends Object implements RowSetMetaData, Serializable
提供有关设置和获取关于RowSet
对象列的元数据信息的方法的实现。RowSetMetaDataImpl
对象跟踪行集中的列数,并维护每列的列属性的内部数组。RowSet
对象在内部创建一个RowSetMetaDataImpl
对象,以便设置和检索有关其列的信息。注意:
RowSetMetaDataImpl
对象中的所有元数据应被视为不可用,直到其描述的RowSet
对象被填充。 因此,任何检索信息的RowSetMetaDataImpl
方法都被定义为在RowSet
对象包含数据之前调用时具有未指定的行为。- 从以下版本开始:
- 1.5
- 另请参见:
- Serialized Form
-
-
Field Summary
-
Fields inherited from interface java.sql.ResultSetMetaData
columnNoNulls, columnNullable, columnNullableUnknown
-
-
构造方法摘要
构造方法 Constructor 描述 RowSetMetaDataImpl()
-
方法摘要
所有方法 接口方法 具体的方法 Modifier and Type 方法 描述 String
getCatalogName(int columnIndex)
检索从中导出指定列中的值的表的目录名称。String
getColumnClassName(int columnIndex)
以指定列中的值映射到的Java编程语言中的类的全限定名称。int
getColumnCount()
检索创建此RowSetMetaDataImpl
对象的RowSet
对象中的列数。int
getColumnDisplaySize(int columnIndex)
检索指定列的字符的正常最大宽度。String
getColumnLabel(int columnIndex)
检索指定列的建议列标题,以用于打印输出和显示。String
getColumnName(int columnIndex)
检索指定列的名称。int
getColumnType(int columnIndex)
检索存储在指定列中的SQL类型的类型代码(java.sql.Types
常量之一)。String
getColumnTypeName(int columnIndex)
检索存储在指定列中的值的DBMS特定类型名称。int
getPrecision(int columnIndex)
检索存储在指定列中的值的总位数。int
getScale(int columnIndex)
检索存储在指定列中的值的小数点右边的位数。String
getSchemaName(int columnIndex)
检索从中导出指定列中的值的表的模式名称。String
getTableName(int columnIndex)
检索从中导出指定列中的值的表的名称。boolean
isAutoIncrement(int columnIndex)
检索存储在指定列中的值是否自动编号,因此是唯读的。boolean
isCaseSensitive(int columnIndex)
指示指定列的名称是否重要。boolean
isCurrency(int columnIndex)
指示存储在指定列中的值是否为现金值。boolean
isDefinitelyWritable(int columnIndex)
指示指定列上的写操作是否一定会成功。int
isNullable(int columnIndex)
检索一个常量,指示是否可以在指定的列中存储NULL
值。boolean
isReadOnly(int columnIndex)
指示指定的列是否绝对不可写,因此只读。boolean
isSearchable(int columnIndex)
指示存储在指定列中的值是否可以在WHERE
子句中使用。boolean
isSigned(int columnIndex)
指示存储在指定列中的值是否为有符号数。boolean
isWrapperFor(Class<?> interfaces)
如果这实现了接口参数,或者直接或间接地为一个对象的包装器返回true。boolean
isWritable(int columnIndex)
指示指定列上的写操作是否可以成功。void
setAutoIncrement(int columnIndex, boolean property)
设置指定列是否自动编号,因此只读为给定的boolean
值。void
setCaseSensitive(int columnIndex, boolean property)
设置指定列的名称是否对给定的boolean
区分大小写。void
setCatalogName(int columnIndex, String catalogName)
将派生指定列的表的目录名称设置为 catalogName 。void
setColumnCount(int columnCount)
设置为给定数量的列数RowSet
针对此对象RowSetMetaDataImpl
创建对象。void
setColumnDisplaySize(int columnIndex, int size)
将指定列中正常的最大字符数设置为给定的数字。void
setColumnLabel(int columnIndex, String label)
设置建议的列标签,用于打印输出和显示(如果有) 标签 。void
setColumnName(int columnIndex, String columnName)
将指定列的列名称设置为给定的名称。void
setColumnType(int columnIndex, int SQLType)
将存储在指定列中的值的SQL类型代码设置为来自类别java.sql.Types
的给定类型代码。void
setColumnTypeName(int columnIndex, String typeName)
将存储在指定列中的值的数据源使用的类型名称设置为给定的类型名称。void
setCurrency(int columnIndex, boolean property)
设置存储在指定列中的值是否为给定的boolean
的现金值。void
setNullable(int columnIndex, int property)
设置是否存储在指定列中的值可以被设置为NULL
从界面到给定的常量ResultSetMetaData
。void
setPrecision(int columnIndex, int precision)
将存储在指定列中的值中的十进制数字的总数设置为给定的数字。void
setScale(int columnIndex, int scale)
将存储在指定列中的值中的小数点右边的位数设置为给定的数字。void
setSchemaName(int columnIndex, String schemaName)
将指定列的表的模式名称(如果有)设置为 schemaName 。void
setSearchable(int columnIndex, boolean property)
设置存储在指定列中的值是否可以在给定的boolean
值的WHERE
子句中使用。void
setSigned(int columnIndex, boolean property)
设置存储在指定列中的值是否为给定的boolean
。void
setTableName(int columnIndex, String tableName)
将派生指定列的表的名称设置为给定的表名。<T> T
unwrap(Class<T> iface)
返回一个实现给定接口以允许访问非标准方法的对象,或代理不公开的标准方法。
-
-
-
方法详细信息
-
setColumnCount
public void setColumnCount(int columnCount) throws SQLException
将给定的这个RowSetMetaDataImpl
对象的RowSet
对象的列数设置为给定的数字。- Specified by:
-
setColumnCount
在接口RowSetMetaData
- 参数
-
columnCount
- 一个int
给出了RowSet
对象中的列数 - 异常
-
SQLException
- 如果给定的数字等于或小于零
-
setAutoIncrement
public void setAutoIncrement(int columnIndex, boolean property) throws SQLException
设置指定列是否自动编号,因此只读为给定的boolean
值。- Specified by:
-
setAutoIncrement
在接口RowSetMetaData
- 参数
-
columnIndex
- 第一columnIndex
1,第二columnIndex
2,依此类推; 必须在1
之间,并且行1
的列数(包括行数) -
property
-true
如果给定列自动递增; 否则为false
- 异常
-
SQLException
- 如果发生数据库访问错误或给定索引超出范围
-
setCaseSensitive
public void setCaseSensitive(int columnIndex, boolean property) throws SQLException
设置指定列的名称是否对给定的boolean
区分大小写。- Specified by:
-
setCaseSensitive
在接口RowSetMetaData
- 参数
-
columnIndex
- 第一columnIndex
1,第二columnIndex
2,依此类推; 必须在1
之间,并且行1
的列数(包括行数) -
property
-true
以表示列名称区分大小写; 否则为false
- 异常
-
SQLException
- 如果发生数据库访问错误或给定的列号超出范围
-
setSearchable
public void setSearchable(int columnIndex, boolean property) throws SQLException
设置在给定的boolean
值的WHERE
子句中是否可以使用存储在指定列中的值。- Specified by:
-
setSearchable
在接口RowSetMetaData
- 参数
-
columnIndex
- 第一columnIndex
1,第二columnIndex
2,依此类推; 必须在1
之间,并且行1
的列数(包括行数) -
property
-true
以表示可以在WHERE
子句中使用列值; 否则为false
- 异常
-
SQLException
- 如果发生数据库访问错误或给定的列号超出范围
-
setCurrency
public void setCurrency(int columnIndex, boolean property) throws SQLException
设置存储在指定列中的值是否为给定的现金值boolean
。- Specified by:
-
setCurrency
在接口RowSetMetaData
- 参数
-
columnIndex
- 第一columnIndex
1,第二columnIndex
2,依此类推; 必须在1
和列数之间,包括1
和列数之间,包括 -
property
- 如果该值为现金值,property
true; 否则为假。 - 异常
-
SQLException
- 如果发生数据库访问错误或给定的列号超出范围
-
setNullable
public void setNullable(int columnIndex, int property) throws SQLException
设置是否存储在指定列中的值可以被设置为NULL
从界面到给定的常量ResultSetMetaData
。- Specified by:
-
setNullable
在接口RowSetMetaData
- 参数
-
columnIndex
- 第一columnIndex
1,第二columnIndex
2,依此类推; 必须在1
之间和列数(含)之间 -
property
-下列操作之一ResultSetMetaData
常量:columnNoNulls
,columnNullable
,或columnNullableUnknown
- 异常
-
SQLException
-如果发生数据库访问错误,给定列数出界,或为 属性参数中提供的值不是以下常量之一:ResultSetMetaData.columnNoNulls
,ResultSetMetaData.columnNullable
,或ResultSetMetaData.columnNullableUnknown
-
setSigned
public void setSigned(int columnIndex, boolean property) throws SQLException
设置存储在指定列中的值是否为给定的boolean
带符号数。- Specified by:
-
setSigned
在接口RowSetMetaData
- 参数
-
columnIndex
- 第一columnIndex
1,第二columnIndex
2,依此类推; 必须在1
之间和列数(含)之间 -
property
-true
,表明列值是有符号数;false
表示不是 - 异常
-
SQLException
- 如果发生数据库访问错误或给定的列号超出范围
-
setColumnDisplaySize
public void setColumnDisplaySize(int columnIndex, int size) throws SQLException
将指定列中正常的最大字符数设置为给定的数字。- Specified by:
-
setColumnDisplaySize
在接口RowSetMetaData
- 参数
-
columnIndex
- 第一columnIndex
1,第二columnIndex
2,依此类推; 必须在1
之间和列数(含)之间 -
size
- 字符列中的最大大小; 必须是0
或更高 - 异常
-
SQLException
- 如果发生数据库访问错误,给定的列号超出范围,或 大小小于0
-
setColumnLabel
public void setColumnLabel(int columnIndex, String label) throws SQLException
设置建议的列标签,用于打印输出和显示(如果有) 标签 。 如果标签为null
,列标签设置为空字符串(“”)。- Specified by:
-
setColumnLabel
在接口RowSetMetaData
- 参数
-
columnIndex
- 第一columnIndex
1,第二columnIndex
2,依此类推; 必须介于1
和列数之间(含) -
label
- 用于打印输出和显示的列标签; 如果列标签为null
,则设置一个空的String
- 异常
-
SQLException
- 如果发生数据库访问错误或给定列索引超出范围
-
setColumnName
public void setColumnName(int columnIndex, String columnName) throws SQLException
将指定列的列名称设置为给定的名称。- Specified by:
-
setColumnName
在接口RowSetMetaData
- 参数
-
columnIndex
- 第一columnIndex
1,第二columnIndex
2,依此类推; 必须介于1
和列数之间(含) -
columnName
- 表示列名称的String
对象; 如果给定的名称是null
,则设置一个空的String
- 异常
-
SQLException
- 如果发生数据库访问错误或给定的列索引超出范围
-
setSchemaName
public void setSchemaName(int columnIndex, String schemaName) throws SQLException
将指定列的表的模式名称(如果有)设置为schemaName 。 如果schemaName为null
,则模式名称将设置为空字符串(“”)。- Specified by:
-
setSchemaName
在接口RowSetMetaData
- 参数
-
columnIndex
- 第一columnIndex
1,第二columnIndex
2,依此类推; 必须在1
之间和列数(含)之间 -
schemaName
- 派生指定列中的值的表的模式名称; 可能是一个空的String
或null
- 异常
-
SQLException
- 如果发生数据库访问错误或给定的列号超出范围
-
setPrecision
public void setPrecision(int columnIndex, int precision) throws SQLException
将存储在指定列中的值中的十进制数字的总数设置为给定的数字。- Specified by:
-
setPrecision
在接口RowSetMetaData
- 参数
-
columnIndex
- 第一columnIndex
1,第二columnIndex
2,依此类推; 必须介于1
与列数之间(含) -
precision
- 十进制数总数; 必须是0
或更多 - 异常
-
SQLException
- 如果发生数据库访问错误, columnIndex超出范围,或 精度小于0
-
setScale
public void setScale(int columnIndex, int scale) throws SQLException
将存储在指定列中的值中的小数点右边的位数设置为给定的数字。- Specified by:
-
setScale
在接口RowSetMetaData
- 参数
-
columnIndex
- 第一columnIndex
1,第二columnIndex
2,依此类推; 必须在1
之间和列数(含)之间 -
scale
- 小数点右侧的位数; 必须为零或更大 - 异常
-
SQLException
- 如果发生数据库访问错误, columnIndex超出范围,或者 scale小于0
-
setTableName
public void setTableName(int columnIndex, String tableName) throws SQLException
将派生指定列的表的名称设置为给定的表名。- Specified by:
-
setTableName
在接口RowSetMetaData
- 参数
-
columnIndex
- 第一columnIndex
1,第二columnIndex
2,依此类推; 必须在1
和列数之间(含) -
tableName
- 列的表名; 可能是null
或一个空字符串 - 异常
-
SQLException
- 如果发生数据库访问错误或给定的列号超出范围
-
setCatalogName
public void setCatalogName(int columnIndex, String catalogName) throws SQLException
将派生指定列的表的目录名称设置为catalogName 。 如果CatalogName编为null
,类别名称设置为空字符串。- Specified by:
-
setCatalogName
在接口RowSetMetaData
- 参数
-
columnIndex
- 第一columnIndex
1,第二columnIndex
2,依此类推; 必须在1
之间和列数(含)之间 -
catalogName
- 列的表的目录名称; 如果null
为null
,则设置一个空的String
- 异常
-
SQLException
- 如果发生数据库访问错误或给定的列号超出范围
-
setColumnType
public void setColumnType(int columnIndex, int SQLType) throws SQLException
将存储在指定列中的值的SQL类型代码设置为来自类别java.sql.Types
的给定类型代码。- Specified by:
-
setColumnType
在接口RowSetMetaData
- 参数
-
columnIndex
- 第一columnIndex
1,第二columnIndex
2,依此类推; 必须在1
之间和列数(含)之间 -
SQLType
- 指定列的SQL类型,它必须是类java.sql.Types
中的常量之一 - 异常
-
SQLException
- 如果发生数据库访问错误,给定的列号超出范围,或者指定的列类型不是java.sql.Types
中的常量之一 - 另请参见:
-
Types
-
setColumnTypeName
public void setColumnTypeName(int columnIndex, String typeName) throws SQLException
将存储在指定列中的值的数据源使用的类型名称设置为给定的类型名称。- Specified by:
-
setColumnTypeName
在接口RowSetMetaData
- 参数
-
columnIndex
- 第一columnIndex
1,第二columnIndex
2,依此类推; 必须在1
之间和列数(含)之间 -
typeName
- 数据源特定类型名称; 如果typeName为null
,则设置一个空的String
- 异常
-
SQLException
- 如果发生数据库访问错误或给定的列号超出范围
-
getColumnCount
public int getColumnCount() throws SQLException
检索创建此RowSetMetaDataImpl
对象的RowSet
对象中的列数。- Specified by:
-
getColumnCount
在接口ResultSetMetaData
- 结果
- 列数
- 异常
-
SQLException
- 如果确定列计数出现错误
-
isAutoIncrement
public boolean isAutoIncrement(int columnIndex) throws SQLException
检索存储在指定列中的值是否自动编号,因此是唯读的。- Specified by:
-
isAutoIncrement
在接口ResultSetMetaData
- 参数
-
columnIndex
- 第一columnIndex
1,第二columnIndex
2,依此类推; 必须在1
之间和列数(含)之间 - 结果
-
true
如果列自动编号; 否则为false
- 异常
-
SQLException
- 如果发生数据库访问错误或给定的列号超出范围
-
isCaseSensitive
public boolean isCaseSensitive(int columnIndex) throws SQLException
指示指定列的名称是否重要。- Specified by:
-
isCaseSensitive
在接口ResultSetMetaData
- 参数
-
columnIndex
- 第一columnIndex
1,第二columnIndex
2,依此类推; 必须介于1
与列数之间(含) - 结果
-
true
如果列名称区分大小写; 否则为false
- 异常
-
SQLException
- 如果发生数据库访问错误或给定的列号超出范围
-
isSearchable
public boolean isSearchable(int columnIndex) throws SQLException
指示是否可以在WHERE
子句中使用存储在指定列中的WHERE
。- Specified by:
-
isSearchable
在接口ResultSetMetaData
- 参数
-
columnIndex
- 第一columnIndex
1,第二columnIndex
2,依此类推; 必须介于1
与列数之间(含) - 结果
-
true
如果指定列中的值可以在WHERE
子句中使用;false
否则 - 异常
-
SQLException
- 如果发生数据库访问错误或给定的列号超出范围
-
isCurrency
public boolean isCurrency(int columnIndex) throws SQLException
指示存储在指定列中的值是否为现金值。- Specified by:
-
isCurrency
接口ResultSetMetaData
- 参数
-
columnIndex
- 第一columnIndex
1,第二columnIndex
2,依此类推; 必须在1
之间和列数(含)之间 - 结果
-
如果指定列中的值为现金值,
true
; 否则为false
- 异常
-
SQLException
- 如果发生数据库访问错误或给定的列号超出范围
-
isNullable
public int isNullable(int columnIndex) throws SQLException
检索一个常量,指示是否可以在指定列中存储NULL
值。- Specified by:
-
isNullable
在接口ResultSetMetaData
- 参数
-
columnIndex
- 第一columnIndex
1,第二columnIndex
2,依此类推; 必须介于1
与列数之间(含) - 结果
-
一个常数从
ResultSetMetaData
界面; 任一columnNoNulls
,columnNullable
,或columnNullableUnknown
- 异常
-
SQLException
- 如果发生数据库访问错误或给定的列号超出范围
-
isSigned
public boolean isSigned(int columnIndex) throws SQLException
指示存储在指定列中的值是否为有符号数。- Specified by:
-
isSigned
在接口ResultSetMetaData
- 参数
-
columnIndex
- 第一columnIndex
1,第二columnIndex
2,依此类推; 必须在1
之间和列数(含)之间 - 结果
-
true
如果指定列中的值是有符号的数字; 否则为false
- 异常
-
SQLException
- 如果发生数据库访问错误或给定的列号超出范围
-
getColumnDisplaySize
public int getColumnDisplaySize(int columnIndex) throws SQLException
检索指定列的字符的正常最大宽度。- Specified by:
-
getColumnDisplaySize
在接口ResultSetMetaData
- 参数
-
columnIndex
- 第一columnIndex
1,第二columnIndex
2,依此类推; 必须在1
之间和列数(含)之间 - 结果
- 可以在指定列中显示的最大字符数
- 异常
-
SQLException
- 如果发生数据库访问错误或给定的列号超出范围
-
getColumnLabel
public String getColumnLabel(int columnIndex) throws SQLException
检索指定列的建议列标题,以用于打印输出和显示。- Specified by:
-
getColumnLabel
在接口ResultSetMetaData
- 参数
-
columnIndex
- 第一columnIndex
1,第二columnIndex
2,依此类推; 必须在1
之间和列数(含)之间 - 结果
- 建议的列名称用于打印输出和显示
- 异常
-
SQLException
- 如果发生数据库访问错误或给定的列号超出范围
-
getColumnName
public String getColumnName(int columnIndex) throws SQLException
检索指定列的名称。- Specified by:
-
getColumnName
在接口ResultSetMetaData
- 参数
-
columnIndex
- 第一columnIndex
1,第二columnIndex
2,依此类推; 必须在1
之间和列数(含)之间 - 结果
- 指定列的列名称
- 异常
-
SQLException
- 如果发生数据库访问错误或给定的列号超出范围
-
getSchemaName
public String getSchemaName(int columnIndex) throws SQLException
检索从中导出指定列中的值的表的模式名称。- Specified by:
-
getSchemaName
在接口ResultSetMetaData
- 参数
-
columnIndex
- 第一columnIndex
1,第二columnIndex
2,依此类推; 必须介于1
和列数之间(含) - 结果
-
模式名称或空
String
如果没有模式名称可用) - 异常
-
SQLException
- 如果发生数据库访问错误或给定的列号超出范围
-
getPrecision
public int getPrecision(int columnIndex) throws SQLException
检索存储在指定列中的值的总位数。- Specified by:
-
getPrecision
在接口ResultSetMetaData
- 参数
-
columnIndex
- 第一columnIndex
1,第二columnIndex
2,依此类推; 必须在1
之间和列数(含)之间 - 结果
- 存储在指定列中的值的精度
- 异常
-
SQLException
- 如果发生数据库访问错误或给定的列号超出范围
-
getScale
public int getScale(int columnIndex) throws SQLException
检索存储在指定列中的值的小数点右边的位数。- Specified by:
-
getScale
在接口ResultSetMetaData
- 参数
-
columnIndex
- 第一columnIndex
1,第二columnIndex
2,依此类推; 必须在1
之间和列数(含)之间 - 结果
- 存储在指定列中的值的比例
- 异常
-
SQLException
- 如果发生数据库访问错误或给定的列号超出范围
-
getTableName
public String getTableName(int columnIndex) throws SQLException
检索从中导出指定列中的值的表的名称。- Specified by:
-
getTableName
在接口ResultSetMetaData
- 参数
-
columnIndex
- 第一列是1,第二列是2,依此类推; 必须在1
之间和列数(含)之间 - 结果
-
表名或空
String
如果没有表名可用) - 异常
-
SQLException
- 如果发生数据库访问错误或给定的列号超出范围
-
getCatalogName
public String getCatalogName(int columnIndex) throws SQLException
检索从中导出指定列中的值的表的目录名称。- Specified by:
-
getCatalogName
在接口ResultSetMetaData
- 参数
-
columnIndex
- 第一columnIndex
1,第二columnIndex
2,依此类推; 必须在1
之间和列数(含)之间 - 结果
-
列的表的目录名称,如果没有可用的目录名称,则为空
String
- 异常
-
SQLException
- 如果发生数据库访问错误或给定的列号超出范围
-
getColumnType
public int getColumnType(int columnIndex) throws SQLException
检索存储在指定列中的SQL类型的类型代码(java.sql.Types
常量之一)。- Specified by:
-
getColumnType
接口ResultSetMetaData
- 参数
-
columnIndex
- 第一columnIndex
1,第二columnIndex
2,依此类推; 必须在1
之间和列数(含)之间 - 结果
-
一个
int
表示存储在指定列中的SQL类型的值 - 异常
-
SQLException
- 如果发生数据库访问错误或给定的列号超出范围 - 另请参见:
-
Types
-
getColumnTypeName
public String getColumnTypeName(int columnIndex) throws SQLException
检索存储在指定列中的值的DBMS特定类型名称。- Specified by:
-
getColumnTypeName
在接口ResultSetMetaData
- 参数
-
columnIndex
- 第一columnIndex
1,第二columnIndex
2,依此类推; 必须在1
之间和列数(含)之间 - 结果
- 数据源使用的类型名称
- 异常
-
SQLException
- 如果发生数据库访问错误或给定的列号超出范围
-
isReadOnly
public boolean isReadOnly(int columnIndex) throws SQLException
指示指定的列是否绝对不可写,因此只读。- Specified by:
-
isReadOnly
在接口ResultSetMetaData
- 参数
-
columnIndex
- 第一columnIndex
1,第二columnIndex
2,依此类推; 必须在1
之间和列数(含)之间 - 结果
-
true
如果这个RowSet
对象是只读的,因此不可更新; 否则为false
- 异常
-
SQLException
- 如果发生数据库访问错误或给定列号超出范围
-
isWritable
public boolean isWritable(int columnIndex) throws SQLException
指示指定列上的写操作是否可以成功。 返回值为true
意味着写入操作可能成功或可能不成功。- Specified by:
-
isWritable
在接口ResultSetMetaData
- 参数
-
columnIndex
- 第一columnIndex
1,第二columnIndex
2,依此类推; 必须在1
之间和列数(含)之间 - 结果
-
true
如果指定列上的写操作可能会成功; 否则为false
- 异常
-
SQLException
- 如果发生数据库访问错误或给定的列号超出范围
-
isDefinitelyWritable
public boolean isDefinitelyWritable(int columnIndex) throws SQLException
指示指定列上的写操作是否一定会成功。- Specified by:
-
isDefinitelyWritable
在接口ResultSetMetaData
- 参数
-
columnIndex
- 第一columnIndex
1,第二columnIndex
2,依此类推; 必须在1
之间和列数(含)之间 - 结果
-
true
如果指定列上的写操作肯定会成功; 否则为false
- 异常
-
SQLException
- 如果发生数据库访问错误或给定的列号超出范围
-
getColumnClassName
public String getColumnClassName(int columnIndex) throws SQLException
以指定列中的值映射到的Java编程语言中的类的全限定名称。 例如,如果该值为int
,则此方法返回的类名将为java.lang.Integer
。如果指定列中的值具有自定义映射,则此方法返回实现
SQLData
的类的名称。 当方法ResultSet.getObject
被调用以从指定的列检索一个值时,它将创建此类或其子类之一的实例。- Specified by:
-
getColumnClassName
在接口ResultSetMetaData
- 参数
-
columnIndex
- 第一columnIndex
1,第二columnIndex
2,依此类推; 必须介于1
和列数之间(含) - 结果
-
Java编程语言中的类的完全限定名称,方法
RowSet.getObject
将用于检索指定列中的值。 这是当有自定义映射时用于自定义映射的类名称。 - 异常
-
SQLException
- 如果发生数据库访问错误或给定的列号超出范围
-
unwrap
public <T> T unwrap(Class<T> iface) throws SQLException
返回一个实现给定接口以允许访问非标准方法的对象,或代理不公开的标准方法。 结果可能是找到用于实现该对象的接口或代理的对象。 如果接收器实现了接口,那就是对象。 如果接收者是一个包装器,并且被包装的对象实现了接口,那就是对象。 否则,对象是在包装对象上递归调用unwrap
的结果。 如果接收方不是包装器,并且不实现接口,则抛出一个SQLException
。- Specified by:
-
unwrap
在接口Wrapper
- 参数类型
-
T
- 由此Class对象建模的类的类型 - 参数
-
iface
- 定义结果必须实现的接口的类。 - 结果
- 一个实现接口的对象。 可能是实际实现对象的代理。
- 异常
-
SQLException
- 如果没有找到实现接口的对象 - 从以下版本开始:
- 1.6
-
isWrapperFor
public boolean isWrapperFor(Class<?> interfaces) throws SQLException
如果这实现了接口参数,或者直接或间接地为一个对象的包装器返回true。 否则返回false。 如果这实现了接口,那么返回true,否则如果这是一个包装器,那么返回在包装对象上递归调用isWrapperFor
的结果。 如果这不实现接口并且不是包装器,则返回false。 与unwrap
相比,此方法应作为低成本操作实现,以便呼叫者可以使用此方法来避免可能失败的昂贵的unwrap
调用。 如果此方法返回true,则使用相同参数调用unwrap
应该会成功。- Specified by:
-
isWrapperFor
在接口Wrapper
- 参数
-
interfaces
- 定义接口的类。 - 结果
- 如果这实现了接口,或者直接或间接地包装一个对象,则为true。
- 异常
-
SQLException
- 如果在确定这是否是具有给定接口的对象的包装器时是否发生错误。 - 从以下版本开始:
- 1.6
-
-