Neo4j应用
Neo4j是用Java开发的,可以直接使用Neo4j API。开始使用Neo4j数据库,我们就从嵌入式的Neo4j开始吧,因为它不用安装服务器,只要引用Neo4j的开发包就能正常使用Neo4j了。
使用Neo4j API
使用Neo4j API的方式来访问Neo4j数据库是很简单的。需要注意的是,在进行任何有关数据库的存取操作过程中,都必须开启事务管理,因为Neo4j的数据存取都是在严格的事务管理中进行的。
引入Maven依赖
<dependency>
<groupId>org.neo4j</groupId>
<artifactId>neo4j</artifactId>
<version>4.1.6</version>
</dependency>
使用嵌入式数据库
使用嵌入式的Neo4j,只要在程序中打开一个文件目录,就可以用它作为Neo4j的数据库。通过使用文件方式打开Neo4j数据库。在程序运行时,将在工程的target目录中创建数据库文件目录neo4j-db,并生成一些数据文件。
使用Neo4j客户端连接数据库
要想连接Neo4j服务器,必须使用Neo4j的驱动程序,这可以在工程的Maven管理中增加Neo4j的驱动依赖配置
<dependency>
<groupId>org.neo4j.driver</groupId>
<artifactId>neo4j-java-driver</artifactId>
<version>${neo4j-java-driver.version}</version>
</dependency>
下面通过一个简单的测试程序来演示如何使用Neo4j API连接Neo4j服务器,以实现数据的存取操作。下面通过一个简单的测试程序来演示如何使用Neo4j API连接Neo4j服务器,以实现数据的存取操作。如代码清单2-25所示,程序中使用Bolt驱动的方式来连接数据库,然后使用Session来运行Cypher查询语句,实现了创建和查询节点的操作。
import org.neo4j.driver.*;
import static org.neo4j.driver.Values.parameters;
public class Neo4jClientTest {
public static void main(String[] args) {
Driver driver = GraphDatabase.driver("bolt://localhost:7687",
AuthTokens.basic("neo4j", "root"));
// 获取会话对象
Session session = driver.session();
String cql = "match(p:Person) where p.money < $money return p.name, p.money AS money";
Result result = session.run(cql, parameters("money", 10000));
while (result.hasNext()) {
Record record = result.next();
System.out.println(record.get("p.name").asString() + ", " + record.get("money").asDouble());
}
session.close();
driver.close();
}
}