Java连接Neo4j数据库

Java应用程序中的嵌入式数据库

Neo4j Server是互操作性,安全性和监控的最佳选择。 实际上,REST接口允许所有现代平台和编程语言与它进行互操作。 此外,作为独立应用程序,它比嵌入式配置更安全(客户端中的潜在故障不会影响服务器),并且更易于监控。 如果我们选择使用这种模式,我们的应用程序将充当Neo4j服务器的客户端。

配置文件

  <!-- Neo4j dependency -->
  <dependency>
	  <groupId>org.neo4j</groupId>
	  <artifactId>neo4j</artifactId>
	  <version>3.2.6</version>
  </dependency>

  <!-- Neo4j服务器开发需要的jar包 -->
  <dependency>
	  <groupId>org.neo4j.driver</groupId>
	  <artifactId>neo4j-java-driver</artifactId>
	  <version>1.5.0</version>
  </dependency>

配置Neo4j服务器允许远程访问

 找到neo4j-community-3.1.3\conf\neo4j.conf  文件,修改

#dbms.connector.http.listen_address=:7474

为 dbms.connector.http.listen_address=0.0.0.0:7474

 

远程bolt连接:

#dbms.connector.bolt.listen_address=:7687

改为:

dbms.connector.bolt.listen_address=0.0.0.0:7687

服务器开发的代码

public static void main( String[] args ) {

    Driver driver = GraphDatabase.driver( "bolt://localhost:7687", AuthTokens.basic( "neo4j", "123456" ) );
    Session session = driver.session();
    //session.run( "CREATE (a:Person {name: {name}, title: {title}})",parameters( "name", "Arthur001", "title", "King001" ) );

    try {
        StatementResult result = session.run( "MATCH (a:Subject3) WHERE a.ID3 = {name} " +
                        "RETURN a.ID3 AS name, a.title AS title",parameters( "name", 30001 ) );

        List<Record> records = result.list();
        System.out.println("result:"+records.size());

        for (Record recordItem : records) {

            List<String> list=recordItem.keys();
            for (String key:list){
                System.out.println("key:"+key);
                System.out.println("value:"+recordItem.get(key));
            }
        }
    } catch (Exception e) {
        e.printStackTrace();
    } finally {
        session.close();
        driver.close();
    }

}

运行结果

注意:

jdk需要1.8以上。

  • 1
    点赞
  • 10
    收藏
    觉得还不错? 一键收藏
  • 5
    评论
评论 5
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值