这几天在学习使用Neo4j,这东西中文资料基本太少。只能去看他官网的开发文档。
它的数据库存在的位置是解压包下面的data里面的XX.db文件夹。相关噢诶之在conf文件夹下。
那个bin是启动它自带的一个web服务管理工具。就相当于以个图形化工具。lib文件夹里是开发用的包。当然也是这个web服务必备的包。
简单使用的代码(1.41版本):
它的数据库存在的位置是解压包下面的data里面的XX.db文件夹。相关噢诶之在conf文件夹下。
那个bin是启动它自带的一个web服务管理工具。就相当于以个图形化工具。lib文件夹里是开发用的包。当然也是这个web服务必备的包。
简单使用的代码(1.41版本):
//载入数据库
GraphDatabaseService neo = new EmbeddedGraphDatabase(
"D:\\xxx\\neo4j-community-1.4.1\\data\\graph.db");
//使用事务
Transaction tx = neo.beginTx();
//遍历所有的节点
for (Node no : neo.getAllNodes())
{
//遍历单个节点拥有的关系。相当于边
for (Relationship rs : no.getRelationships()) {
}
}
//索引的使用:
//如果有名字为my的索引则返回这个否则创建这个索引
neo.index().forNodes("my")
Node newNode=neo.createNode();
//将这个新节点加入到索引中并且配了一键值对,在索引上搜索时会用到。并且一个key可以//对应多个value
neo.index().forNodes("my").add(newNode, “name", "cp");
neo.index().forNodes("my").add(newNode, “name", "cp2");
IndexHits<Node> ih;
//get方法只能传入固定的一组键值对。
ih=neo.index().forNodes("my").get("name","cp");
//query可以传入表达式
//ih=neo.index().forNodes("my").query("name:cp AND name:cp2");
//遍历查询结果集
for (Node n : ih) {
System.out.println("====" + n.getId());
}
//事务处理结束后要关闭事务
tx.success();
tx.finish();
//数据库用完了要释放
neo.shutdown();