Neo4j在java中的使用

本文详细介绍了在Java项目中,如何通过嵌入式数据库和服务器模式访问Neo4j,包括其性能、安全性和监控方面的考虑。同时展示了在SpringBoot框架下整合Neo4j的示例。

1.Neo4j访问的两种方式

  • 嵌入式数据库
  • 服务器模式(通过REST的访问)

它是由应用程序的性质(neo4j是独立服务器 还是和程序在一起),性能,监控和数据安全性来决定架构选择。

An embedded database(嵌入式数据库)

嵌入式Neo4j数据库是性能的最佳选择。 通过指定数据存储的路径以编程方式访问嵌入式数据库。

我们选择嵌入式数据库出于以下原因:

  • 使用Java作为我们项目的编程语言时
  • 应用程序是独立的
  • 程序追求很高的性能

Neo4j Server(服务器模式)

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

2.Java客户端操作Neo4j

1…嵌入式模式

<dependency>
	<groupId>org.neo4j</groupId>
	<artifactId>neo4j</artifactId>
	<version>4.0.1</version>
</dependency>
public class EmbeddedNeo4jAdd {
   
   
    private static final File databaseDirectory = new File( "target/graph.db" );
    public static void main(String[] args) {
   
   
        GraphDatabaseService graphDb = new GraphDatabaseFactory().newEmbeddedDatabase(databaseDirectory);
        System.out.println("Database Load!");
        Transaction tx = graphDb.beginTx();
        Node n1 = graphDb.createNode();
        n1.setProperty("name", "张三");
        n1.setProperty("character", "A");
        n1.setProperty("gender",1);
        n1.setProperty("money", 1101);
        n1.addLabel(new Label() {
   
   
            @Override
            public String name() {
   
   
                return "Person";
            }
        });
        String cql = "CREATE (p:Person{name:'李四',character:'B',gender:1,money:21000})";
        graphDb.execute(cql);
        tx.success();
        tx.close();
        System.out.println("Database Shutdown!");
        graphDb.shutdown();
    }
}
public class EmbeddedNeo4jQueryAll {
   
   
    private static final File databaseDirectory = new File( "target/graph.db" );
    public static void main(String[] args) {
   
   
        GraphDatabaseService graphDb = new GraphDatabaseFactory().newEmbeddedDatabase(databaseDirectory)
要在Java项目中使用Neo4j,你需要按照以下步骤进行设置和配置: 1. 在项目的pom.xml文件中引入Neo4j的相关依赖项。根据你需要的功能,可以选择引入`neo4j-java-driver`或`neo4j`的相关jar包。例如,在`pom.xml`文件中添加以下依赖项: ``` <dependency> <!-- 服务器开发需要的jar包 --> <groupId>org.neo4j.driver</groupId> <artifactId>neo4j-java-driver</artifactId> <version>1.5.0</version> </dependency> <dependency> <!-- 嵌入式开发需要的jar包 --> <groupId>org.neo4j</groupId> <artifactId>neo4j</artifactId> <version>3.3.4</version> </dependency> ``` 引用 2. 启动和停止Neo4j数据库。你可以使用Neo4jJava API来启动和停止数据库实例。在你的Java代码中,通过调用相应的API方法来启动和停止Neo4j数据库。具体操作可以参考相关的文档和资料。引用 3. 在项目中使用Neo4jJava API进行操作。你可以通过Neo4jJava API来进行图数据库的增删改查等操作。具体可以参考相关的文档和资料,根据你的需求编写相应的Java代码来操作Neo4j数据库。引用 4. 如果你使用的是Maven作为项目构建工具,可以在`pom.xml`文件中通过添加相应的`dependency`来引入Neo4j的jar包。例如,在`dependencies`部分添加以下代码: ``` <dependency> <groupId>org.neo4j</groupId> <artifactId>neo4j</artifactId> <version>3.2.7</version> </dependency> ``` 引用 这些是在Java项目中使用Neo4j的基本步骤和配置。具体的操作和代码可以根据你的需求和项目的实际情况进行调整。<span class="em">1</span><span class="em">2</span><span class="em">3</span> #### 引用[.reference_title] - *1* [Neo4j使用Java调用实例](https://blog.youkuaiyun.com/sunroyi666/article/details/80801859)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v93^chatsearchT3_2"}}] [.reference_item style="max-width: 50%"] - *2* *3* [Neo4jJava API操作](https://blog.youkuaiyun.com/m0_52735414/article/details/128192474)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v93^chatsearchT3_2"}}] [.reference_item style="max-width: 50%"] [ .reference_list ]
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值