我有一个ResultSet返回不同类型的数据。该查询是动态构造的,因此在编译时,我不知道查询将返回哪种类型的值。
假设所有结果都是字符串,我编写了以下代码。但是我也想获取每个值的类型。我怎样才能做到这一点?
以下是我编写的代码。
while (reportTable_rst.next()) {
String column = reportTable_rst.getString(columnIterator);
}
此时,我想获取列类型,并根据数据类型获取值。
所述ResultSetMetaData.getColumnType(int column)
返回一个int
指定列类型值发现java.sql.Types
。
例:
Connection connection = DriverManager.getConnection(JDBC_URL, JDBC_USERNAME, JDBC_PASSWORD);
PreparedStatement statement = connection.prepareStatement(JDBC_SELECT);
ResultSet rs = statement.executeQuery();
PrintStream out = System.out;
if (rs != null) {
while (rs.next()) {
ResultSetMetaData rsmd = rs.getMetaData();
for (int i = 1; i <= rsmd.getColumnCount(); i++) {
if (i > 1) {
out.print(",");
}
int type = rsmd.getColumnType(i);
if (type == Types.VARCHAR || type == Types.CHAR) {
out.print(rs.getString(i));
} else {
out.print(rs.getLong(i));
}
}
out.println();
}
}
我有两个具有FK关系的表。我想要的相当于: 我如何在jOOQ中有效地做到这一点?最后,每个结果行需要一个ARecord实例和一个BRecord实例。
在db.js中有一个代码片段,如下所示, 并且我想获得当我在app.js中调用函数时的结果数据,如下所示。 正如您所看到的,当我试图从db.js获取数据时,它在控制台窗口中显示“the data is undefined”。我该如何解决这个问题?有什么建议吗?
我正在开发一个程序,提示用户输入姓名、年龄和性别。该程序应该从每个输入中给我一个姓名、年龄和性别的列表,并告诉我谁是该列表中年龄最大的人。我已经创建了一个数组列表来保存这些值,我可以使用增强循环打印出姓名、年龄和性别。我遇到的问题是让程序打印出数组列表中最高(最老)的数字。我已经创建了一个替代方法,通过创建一个只有年龄的附加数组列表来实现这一点,但是我似乎没有找到从原始数组列表中获取这一点的方法。
问题内容: 我正在使用Oracle数据库。 我想使用Java JDBC获得分配给列的默认值。 但是using 没有提供任何方法来获取列的默认值。 所以,请告诉我任何想法。提前致谢。 问题答案: 您可以运行此查询
我正在与发布者和订阅者制作聊天应用程序,我有两个类,一个是聊天框架,一个是聊天成员类。成员类从jtext field获取消息,聊天成员发布者将其发送回jtext Area。 我很难从订阅者MessageListener获取返回到jtext区域的文本 谢谢。
问题内容: 我已经签出了很多页面,但是大多数教程和脚本使用这种JSON输出类型返回错误代码。那么,如何才能从Java中的JSON中提取数据? 问题答案: 如果要使用Gson,则首先声明用于容纳每个元素和子元素的类: 然后,声明一个最外层元素的数组(因为在这种情况下,JSON对象是一个JSON数组),并对其进行分配: 然后,您只需访问的元素。 要记住的重要一点是,您声明的属性的名称和类型应与JSON