您当前的位置: 首页 >  neo4j

Dongguo丶

暂无认证

  • 5浏览

    0关注

    472博文

    0收益

  • 0浏览

    0点赞

    0打赏

    0留言

私信
关注
热门博文

Neo4j Hello World demo

Dongguo丶 发布时间:2017-11-23 14:28:14 ,浏览量:5

参考No4j中文使用手册以及例子.doc完成了Hello World的小demo
想要了解Neo4j的朋友,建议去Neo4j官网学习,No4j中文使用手册以及例子已经过时了,有些部分已经改变,不建议继续拿来参考
代码:
import java.io.File;
 
import org.neo4j.graphdb.Direction;
import org.neo4j.graphdb.GraphDatabaseService;
import org.neo4j.graphdb.Node;
import org.neo4j.graphdb.Relationship;
import org.neo4j.graphdb.RelationshipType;
import org.neo4j.graphdb.Transaction;
import org.neo4j.graphdb.factory.GraphDatabaseFactory;
/**
 * 创建、删除节点
 * @author Administrator
 *
 */
public class demo {
    public static void main(String[] args) {
        GraphDatabaseService graphDb;
        Node firstNode;
        Node secondNode;
        Relationship relationship;
        graphDb=new GraphDatabaseFactory().newEmbeddedDatabase(new File("E:\\neo4j\\neo4j1.db"));//数据库所在的本地目录页路径
     registerShutdownHook(graphDb);
        try (
                Transaction tx=graphDb.beginTx();
            ){
            //创建Nodes
            firstNode=graphDb.createNode();
            firstNode.setProperty("message", "hello,");
            secondNode=graphDb.createNode();
            secondNode.setProperty("message", "world!");
            //创建关系
            relationship=firstNode.createRelationshipTo(secondNode, RelTypes.KNOWS);
            relationship.setProperty("message", "brave Neo4j");
             
            System.out.println(firstNode.getProperty("message"));
            System.out.println(relationship.getProperty("message"));
            System.out.println(secondNode.getProperty("message"));
            //删除关系 节点
//          firstNode.getSingleRelationship(RelTypes.KNOWS, Direction.OUTGOING);//类型和方向   首先要删除关系 ,删除有关系的节点时会失败
//          firstNode.delete();
//          secondNode.delete();
            //删除关系
            tx.success();
             
             
        } catch (Exception e) {
             
        }  
    }
     
    /**
     * 确保neo4j正确关闭
     * @param graphDb
     */
    public static void registerShutdownHook(final GraphDatabaseService graphDb) {
        Runtime.getRuntime().addShutdownHook(new Thread() {
            @Override
            public void run() {
                graphDb.shutdown();
            }
        });
    }
 
    /**
     * 枚举关系类型
     * @author Administrator
     *
     */
    private static enum RelTypes implements RelationshipType{
        KNOWS
    }
}

运行结果:
注意部分:
代码中的 E:\\neo4j\\neo4j1.dbNeo4j数据库所在的本地路径
在运行程序时,Neo4j的数据库必须要处于关闭状态,否则运行代码就会报错:
关注
打赏
1638062488
查看更多评论
立即登录/注册

微信扫码登录

0.1018s