【发布时间】:2017-04-12 07:25:32
【问题描述】:
Neo4j 密码查询 collect() 在结果中返回数组。为了迭代它,我们需要将它添加到 arrayList 中。我们之前使用的流程对我们没有帮助并抛出异常。
以前的代码:-
public String GettingCurrentDate() {
Connection connect = null;
String query=null;
try {
connect = graphdbConnect();
Statement stmt = connect.createStatement();
query="match(n:learner) "
+ " return collect(n.name) as ids";
System.out.println(query);
ResultSet rs = stmt.executeQuery(query.toLowerCase());
while(rs.next()){
Array idsList=rs.getArray("ids");
System.out.println("idsList :: "+idsList);
ArrayList<String> userIds = new ArrayList<>();
String[] userIdsArray = (String[])rs.getArray("ids").getArray();
for(String id : userIdsArray) {
userIds.add(id);
System.out.println(userIds+"------userId");
}
}
}
catch(Exception e) {
e.printStackTrace();
} finally {
if(connect!=null) {
try {
connect.close();
} catch (SQLException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}
}
return "sucess";
}
此代码出现异常java.sql.SQLFeatureNotSupportedException: get array
问题:- 我们如何从 COLLECT() 函数中获取数据并对其进行迭代
【问题讨论】: