自定义JSONObject键的列名

时间:2013-11-05 16:10:30

标签: java

我有一个JSONObject,我在其中放置数据库中列的键和值。我希望密钥名称显示为自定义名称,而我将其等同于DB中的列名称。我该怎么做?

例如,我有 -

    myObj.put(resultSet.getString(personId), personCarInfo);                

虽然我希望它是 -

    myObj.put("personId", personCarInfo);               

2 个答案:

答案 0 :(得分:0)

在JDBC中,您可以使用ResultSet元数据查询列的名称:

String columnName = resultSet.getMetaData().getColumnName(columnIndex);
String columnValue = resultSet.getString(columnIndex); // assuming, its a string
myObj.put(columnName, columnValue);

答案 1 :(得分:0)

如果我理解正确,您希望在column namescustom defined names之间进行映射。
您可以使用静态初始化hashMap或使用enums创建简单的单向映射 如果您想要双向映射(即能够从自定义column name字符串恢复表"personId"字符串),您可以使用Guava BiMap。例如。 希望有所帮助。