本文整理了Java中java.sql.ResultSet.getMetaData
方法的一些代码示例,展示了ResultSet.getMetaData
的具体用法。这些代码示例主要来源于Github
/Stackoverflow
/Maven
等平台,是从一些精选项目中提取出来的代码,具有较强的参考意义,能在一定程度帮忙到你。ResultSet.getMetaData
方法的具体详情如下:
包路径:java.sql.ResultSet
类名称:ResultSet
方法名:getMetaData
[英]Gets the metadata for this ResultSet. This defines the number, types and properties of the columns in the ResultSet.
[中]获取此结果集的元数据。这定义了结果集中列的数量、类型和属性。
代码示例来源:origin: stackoverflow.com
ResultSet rs = stmt.executeQuery("SELECT a, b, c FROM TABLE2");
ResultSetMetaData rsmd = rs.getMetaData();
String name = rsmd.getColumnName(1);
代码示例来源:origin: stackoverflow.com
Statement st = conn.createStatement();
ResultSet rs = st.executeQuery(query);
ResultSetMetaData rsmd = rs.getMetaData();
int columnsNumber = rsmd.getColumnCount();
代码示例来源:origin: stackoverflow.com
ResultSet rs = stmt.executeQuery("SELECT a, b, c FROM TABLE2");
ResultSetMetaData rsmd = rs.getMetaData();
int columnCount = rsmd.getColumnCount();
// The column count starts from 1
for (int i = 1; i <= columnCount; i++ ) {
String name = rsmd.getColumnName(i);
// Do stuff with name
}
代码示例来源:origin: apache/incubator-shardingsphere
private Iterator<QueryRow> getResultData(final ResultSet resultSet) throws SQLException {
Collection<QueryRow> result = new LinkedList<>();
while (resultSet.next()) {
List<Object> rowData = new ArrayList<>(columnLabelAndIndexMap.size());
for (int columnIndex = 1; columnIndex <= resultSet.getMetaData().getColumnCount(); columnIndex++) {
rowData.add(resultSet.getObject(columnIndex));
}
result.add(new QueryRow(rowData));
}
return result.iterator();
}
代码示例来源:origin: apache/kylin
@Test
public void testPreparedStatementWithMockData() throws SQLException {
Driver driver = new DummyDriver();
Connection conn = driver.connect("jdbc:kylin://test_url/test_db", null);
PreparedStatement state = conn.prepareStatement("select * from test_table where id=?");
state.setInt(1, 10);
ResultSet resultSet = state.executeQuery();
ResultSetMetaData metadata = resultSet.getMetaData();
assertEquals(12, metadata.getColumnType(1));
assertEquals("varchar", metadata.getColumnTypeName(1));
assertEquals(1, metadata.isNullable(1));
while (resultSet.next()) {
assertEquals("foo", resultSet.getString(1));
assertEquals("bar", resultSet.getString(2));
assertEquals("tool", resultSet.getString(3));
}
resultSet.close();
state.close();
conn.close();
}
代码示例来源:origin: prestodb/presto
private void assertSetNull(int sqlType, int expectedSqlType)
throws SQLException
{
try (Connection connection = createConnection();
PreparedStatement statement = connection.prepareStatement("SELECT ?")) {
statement.setNull(1, sqlType);
try (ResultSet rs = statement.executeQuery()) {
assertTrue(rs.next());
assertNull(rs.getObject(1));
assertTrue(rs.wasNull());
assertFalse(rs.next());
assertEquals(rs.getMetaData().getColumnType(1), expectedSqlType);
}
}
}
代码示例来源:origin: looly/hutool
@Override
public E handle(ResultSet rs) throws SQLException {
final ResultSetMetaData meta = rs.getMetaData();
final int columnCount = meta.getColumnCount();
return rs.next() ? HandleHelper.handleRow(columnCount, meta, rs, this.elementBeanType) : null;
}
}
代码示例来源:origin: spring-projects/spring-framework
@Test
public void testQueryForObjectWithMapAndInteger() throws Exception {
given(resultSet.getMetaData()).willReturn(resultSetMetaData);
given(resultSet.next()).willReturn(true, false);
given(resultSet.getInt(1)).willReturn(22);
Map<String, Object> params = new HashMap<>();
params.put("id", 3);
Object o = template.queryForObject("SELECT AGE FROM CUSTMR WHERE ID = :id",
params, Integer.class);
assertTrue("Correct result type", o instanceof Integer);
verify(connection).prepareStatement("SELECT AGE FROM CUSTMR WHERE ID = ?");
verify(preparedStatement).setObject(1, 3);
}
代码示例来源:origin: spotbugs/spotbugs
@ExpectWarning("SQL")
public void test0noloop(ResultSet rs) throws SQLException {
ResultSetMetaData rsmd = rs.getMetaData();
int numCols = rsmd.getColumnCount();
if (numCols > 0) {
String s = rs.getString(0); // error: first column is 1
System.out.println(s);
}
}
代码示例来源:origin: spring-projects/spring-framework
this.resultSet = resultSet;
try {
this.rowSetMetaData = new ResultSetWrappingSqlRowSetMetaData(resultSet.getMetaData());
ResultSetMetaData rsmd = resultSet.getMetaData();
if (rsmd != null) {
int columnCount = rsmd.getColumnCount();
this.columnLabelMap = new HashMap<>(columnCount);
for (int i = 1; i <= columnCount; i++) {
String key = rsmd.getColumnLabel(i);
代码示例来源:origin: nutzam/nutz
public void onAfter(Connection conn, ResultSet rs, Statement stmt) throws SQLException {
if (rs != null && rs.next()) {
String colName = rs.getMetaData().getColumnName(1);
Object obj = entityField.getAdaptor().get(rs, colName);
entityField.setValue(this.getOperatingObject(), obj);
}
}
代码示例来源:origin: spring-projects/spring-framework
@Test(expected = TypeMismatchDataAccessException.class) // SPR-16483
public void doesNotUseConversionService() throws SQLException {
SingleColumnRowMapper<LocalDateTime> rowMapper =
SingleColumnRowMapper.newInstance(LocalDateTime.class, null);
ResultSet resultSet = mock(ResultSet.class);
ResultSetMetaData metaData = mock(ResultSetMetaData.class);
given(metaData.getColumnCount()).willReturn(1);
given(resultSet.getMetaData()).willReturn(metaData);
given(resultSet.getObject(1, LocalDateTime.class))
.willThrow(new SQLFeatureNotSupportedException());
given(resultSet.getTimestamp(1)).willReturn(new Timestamp(0));
rowMapper.mapRow(resultSet, 1);
}
代码示例来源:origin: apache/kylin
private void printResultSetMetaData(ResultSet rs) throws SQLException {
ResultSetMetaData metadata = rs.getMetaData();
System.out.println("Metadata:");
for (int i = 0; i < metadata.getColumnCount(); i++) {
String metaStr = metadata.getCatalogName(i + 1) + " " + metadata.getColumnClassName(i + 1) + " "
+ metadata.getColumnDisplaySize(i + 1) + " " + metadata.getColumnLabel(i + 1) + " "
+ metadata.getColumnName(i + 1) + " " + metadata.getColumnType(i + 1) + " "
+ metadata.getColumnTypeName(i + 1) + " " + metadata.getPrecision(i + 1) + " "
+ metadata.getScale(i + 1) + " " + metadata.getSchemaName(i + 1) + " "
+ metadata.getTableName(i + 1);
System.out.println(metaStr);
}
}
}
代码示例来源:origin: hibernate/hibernate-orm
public static List<Map<String,?>> extractResults(ResultSet resultSet) throws SQLException {
List<Map<String,?>> results = new ArrayList<Map<String, ?>>();
while ( resultSet.next() ) {
Map<String,Object> row = new HashMap<String, Object>();
for ( int i = 1; i <= resultSet.getMetaData().getColumnCount(); i++ ) {
row.put(
resultSet.getMetaData().getColumnLabel( i ),
resultSet.getObject( i )
);
results.add( row );
}
}
return results;
}
}
代码示例来源:origin: apache/kylin
@Test
public void testMultipathOfDomainForConnection() throws SQLException {
Driver driver = new DummyDriver();
Connection conn = driver.connect("jdbc:kylin://test_url/kylin/test_db/", null);
Statement state = conn.createStatement();
ResultSet resultSet = state.executeQuery("select * from test_table where url not in ('http://a.b.com/?a=b') limit 1");
ResultSetMetaData metadata = resultSet.getMetaData();
assertEquals(12, metadata.getColumnType(1));
assertEquals("varchar", metadata.getColumnTypeName(1));
assertEquals(1, metadata.isNullable(1));
while (resultSet.next()) {
assertEquals("foo", resultSet.getString(1));
assertEquals("bar", resultSet.getString(2));
assertEquals("tool", resultSet.getString(3));
}
resultSet.close();
state.close();
conn.close();
}
代码示例来源:origin: prestodb/presto
private void assertParameter(Object expectedValue, int expectedSqlType, Binder binder)
throws SQLException
{
try (Connection connection = createConnection();
PreparedStatement statement = connection.prepareStatement("SELECT ?")) {
binder.bind(statement, 1);
try (ResultSet rs = statement.executeQuery()) {
assertTrue(rs.next());
assertEquals(expectedValue, rs.getObject(1));
assertFalse(rs.next());
assertEquals(rs.getMetaData().getColumnType(1), expectedSqlType);
}
}
}
代码示例来源:origin: looly/hutool
@Override
public Entity handle(ResultSet rs) throws SQLException {
final ResultSetMetaData meta = rs.getMetaData();
final int columnCount = meta.getColumnCount();
return rs.next() ? HandleHelper.handleRow(columnCount, meta, rs) : null;
}
}
代码示例来源:origin: spring-projects/spring-framework
@Test
public void testQueryForIntWithParamMap() throws Exception {
given(resultSet.getMetaData()).willReturn(resultSetMetaData);
given(resultSet.next()).willReturn(true, false);
given(resultSet.getInt(1)).willReturn(22);
MapSqlParameterSource params = new MapSqlParameterSource();
params.addValue("id", 3);
int i = template.queryForObject("SELECT AGE FROM CUSTMR WHERE ID = :id", params, Integer.class).intValue();
assertEquals("Return of an int", 22, i);
verify(connection).prepareStatement("SELECT AGE FROM CUSTMR WHERE ID = ?");
verify(preparedStatement).setObject(1, 3);
}
代码示例来源:origin: spotbugs/spotbugs
@ExpectWarning("SQL")
public void test0(ResultSet rs) throws SQLException {
ResultSetMetaData rsmd = rs.getMetaData();
int numCols = rsmd.getColumnCount();
for (int i = 0; i < numCols; i++) {
System.out.print("i = [" + i + "] ");
String s = rs.getString(i);
System.out.println(s);
}
}
代码示例来源:origin: SonarSource/sonarqube
private Set<String> getColumnNames(ResultSet res) {
try {
Set<String> columnNames = new HashSet<>();
ResultSetMetaData meta = res.getMetaData();
int numCol = meta.getColumnCount();
for (int i = 1; i < numCol + 1; i++) {
columnNames.add(meta.getColumnLabel(i).toLowerCase());
}
return columnNames;
} catch (Exception e) {
throw new IllegalStateException("Fail to get column names");
}
}
内容来源于网络,如有侵权,请联系作者删除!