Neo4j java 连接不起作用


    import org.neo4j.driver.internal.spi.*;
import org.neo4j.driver.v1.*;
import org.neo4j.driver.v1.Driver;
import org.neo4j.jdbc.ResultSet;
import org.neo4j.jdbc.bolt.BoltConnection;
import org.neo4j.jdbc.bolt.BoltDriver;

import static org.neo4j.driver.v1.Config.build;
import static org.neo4j.driver.v1.Values.parameters;

public class Main {
    static final String url1 = "bolt://127.0.0.1:7687";
    static final String url2 = "http://localhost:7474";
    static final String url3 = "bolt://localhost:7474";
    static final String url4 = "bolt://neo4j:neo4j@localhost";
    static final String url5 = "bolt://localhost";
    public static void main(String[] args) {
        System.out.println("Hello World!");
        Config noSSL = build()
                .withEncryptionLevel(Config.EncryptionLevel.NONE).toConfig();
        Config.ConfigBuilder builder = build();
        builder.withEncryption().toConfig();
      Config config=  builder.withoutEncryption().toConfig();
        Driver driver = GraphDatabase.driver( /*Util.getNeo4jUrl()*/ url5,  AuthTokens.basic( "neo4j", "neo4j" ),config );

        try (Session session = driver.session()){
            if(session.isOpen() == false){
                System.out.println("sesion is closed");
                return;
            }
            session.run( "CREATE (a:Person {name: {name}, title: {title}})",
                    parameters( "name", "Arthur", "title", "King" ) );
            StatementResult result = session.run( "MATCH (a:Person) WHERE a.name = {name} " +
                            "RETURN a.name AS name, a.title AS title",
                    parameters( "name", "Arthur" ) );
            while ( result.hasNext() )
            {
                Record record = result.next();
                System.out.println( record.get( "title" ).asString() + " " + record.get( "name" ).asString() );
            }
            session.close();
            driver.close();
        }

    }
}

这是我在起始页中的示例代码c&p。我尝试了所有网址和 2 个配置("noSSL"已弃用(

当我尝试使用 url5、url4 和 url1 时,我总是收到此消息。

线程"main"中的异常 org.neo4j.driver.v1.exceptions.Authentication异常:由于身份验证失败,客户端未经授权。

我总是在浏览器"http://localhost:7474/browser/"中使用这些凭据登录

尝试更改以下行:

Config noSSL = build().withEncryptionLevel(Config.EncryptionLevel.NONE).toConfig();
Config.ConfigBuilder builder = build();
builder.withEncryption().toConfig();
Config config=  builder.withoutEncryption().toConfig();
Driver driver = GraphDatabase.driver( /*Util.getNeo4jUrl()*/ url5, AuthTokens.basic( "neo4j", "neo4j" ),config );

通过这些:

Driver driver = GraphDatabase.driver( "bolt://localhost:7687", AuthTokens.basic( "neo4j", "neo4j" ) );
Session session = driver.session();

设置新密码:

删除文件:

neo4j-community-3.5.2datadbmsauth

在 neo4j-community-3.5.2\bin 目录中执行:

neo4j-admin set-initial-password NewPassword

即例如:

neo4j-admin set-initial-password neo4j

初始用户是:Neo4j

即,然后您可以使用以下方法登录:

AuthTokens.basic("neo4j", "neo4j")

最新更新