java – Neo4j连接字符串
发布时间:2020-12-15 04:29:16 所属栏目:Java 来源:网络整理
导读:我使用neo4j作为我的研究论文的图形数据库,我很难将neo4j2.3.1与简单的jdbc连接连接起来. 这是一个非常简单的代码,我用来连接到neo4j. import java.sql.Connection;import java.sql.DriverManager;import java.sql.ResultSet;import java.sql.Statement;publ
我使用neo4j作为我的研究论文的图形数据库,我很难将neo4j2.3.1与简单的jdbc连接连接起来.
这是一个非常简单的代码,我用来连接到neo4j. import java.sql.Connection; import java.sql.DriverManager; import java.sql.ResultSet; import java.sql.Statement; public class Main { Main(){ try { Class.forName("org.neo4j.jdbc.Driver"); }catch (Exception ex){ } } public static void main(String[] args) { try { Connection con = DriverManager.getConnection("jdbc:neo4j://localhost:7474"); try(Statement stmt = con.createStatement()) { ResultSet rs = stmt.executeQuery("MATCH (n:User) RETURN n.name"); while(rs.next()) { System.out.println(rs.getString("n.name")); } } }catch (Exception ex) { ex.printStackTrace(); } } } 这是日志,显示休息认证方案有些问题. > Aug 27,2015 10:20:25 PM org.neo4j.jdbc.Driver createDatabases INFO: > Embedded Neo4j support not enabled > org/neo4j/graphdb/GraphDatabaseService Aug 27,2015 10:20:25 PM > org.neo4j.jdbc.Driver createDatabases INFO: Embedded Neo4j support not > enabled org/neo4j/graphdb/GraphDatabaseService Starting the Apache > HTTP client Couldn't find any helper support the HTTP_None challenge > scheme. Unauthorized (401) - Unauthorized at > org.restlet.resource.ClientResource.doError(ClientResource.java:612) > at > org.restlet.resource.ClientResource.handleInbound(ClientResource.java:1202) > at > org.restlet.resource.ClientResource.handle(ClientResource.java:1069) > at > org.restlet.resource.ClientResource.handle(ClientResource.java:1044) > at > org.restlet.resource.ClientResource.handle(ClientResource.java:950) > at org.restlet.resource.ClientResource.get(ClientResource.java:658) > at org.neo4j.jdbc.rest.Resources.readJsonFrom(Resources.java:97) at > org.neo4j.jdbc.rest.Resources$DiscoveryClientResource.readInformation(Resources.java:135) > at > org.neo4j.jdbc.rest.Resources.getDiscoveryResource(Resources.java:65) > at > org.neo4j.jdbc.rest.Resources.getDiscoveryResource(Resources.java:60) > at > org.neo4j.jdbc.Neo4jConnection.getDiscoveryResource(Neo4jConnection.java:80) > at > org.neo4j.jdbc.Neo4jConnection.createExecutor(Neo4jConnection.java:69) > at org.neo4j.jdbc.Neo4jConnection.<init>(Neo4jConnection.java:61) at > org.neo4j.jdbc.Connections$4.doCreate(Connections.java:51) at > org.neo4j.jdbc.Connections.create(Connections.java:62) at > org.neo4j.jdbc.Driver.connect(Driver.java:64) at > org.neo4j.jdbc.Driver.connect(Driver.java:36) at > java.sql.DriverManager.getConnection(DriverManager.java:571) > Unauthorized (401) - Unauthorized at > java.sql.DriverManager.getConnection(DriverManager.java:233) at > Main.main(Main.java:20) at > sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) at > sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:57) > at > sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) > at java.lang.reflect.Method.invoke(Method.java:606) at > com.intellij.rt.execution.application.AppMain.main(AppMain.java:140) 我正在使用neo4j2.3.1,因为它带有用户名neo4j的默认验证. 解决方法
然后尝试这些, Neo4jConnection conn; ResultSet rs; public static void main(String[] args) { try{ final Driver driver = new Driver(); //org.neo4j.jdbc.Driver final Properties props = new Properties(); props.put("user","your username"); props.put("password","your password"); String url="jdbc:neo4j://localhost:7474"; conn = driver.connect(url,props); Statement stmt = conn.createStatement() rs = stmt.executeQuery("MATCH (n:User) RETURN n.name"); while(rs.next()) { System.out.println(rs.getString("n.name")); } } catch (SQLException e) { throw new RuntimeException(e); } } (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |