通过 RowMapper 上的 resultSet 获取当前 table 的名称
Get name of current table by resultSet on RowMapper
可以在 RowMapper 的实现中获取当前 table 的名称。
我尝试使用元数据,但没有成功
您可以尝试通过
来确定 table 名称
ResultSet.getMetaData().getTableName(int column)
由于 ResultSet 和 ResultSetMetaData 都只是接口,具体实现取决于您使用的数据库驱动程序。
因此,如果此方法未提供 table名称:
- 驱动程序实现不支持它。
- 该列没有 table 关联(例如 select sysdate ...)
例如当前的 oracle 数据库驱动程序不支持它。
对于 H2,检查 http://www.h2database.com/html/features.html ,它根据 selected 兼容模式描述了 getTableName() 的行为。
可以在 RowMapper 的实现中获取当前 table 的名称。 我尝试使用元数据,但没有成功
您可以尝试通过
来确定 table 名称 ResultSet.getMetaData().getTableName(int column)
由于 ResultSet 和 ResultSetMetaData 都只是接口,具体实现取决于您使用的数据库驱动程序。
因此,如果此方法未提供 table名称:
- 驱动程序实现不支持它。
- 该列没有 table 关联(例如 select sysdate ...)
例如当前的 oracle 数据库驱动程序不支持它。
对于 H2,检查 http://www.h2database.com/html/features.html ,它根据 selected 兼容模式描述了 getTableName() 的行为。