diff --git a/dsRes/Doc/连接Neo4j.txt b/dsRes/Doc/连接Neo4j.txt new file mode 100644 index 00000000..924a4a4f --- /dev/null +++ b/dsRes/Doc/连接Neo4j.txt @@ -0,0 +1,3 @@ +http://10.10.21.20:7474 +neo4j +DsideaL4r5t6y7u \ No newline at end of file diff --git a/dsRes/pom.xml b/dsRes/pom.xml index fb02b427..e4870a84 100644 --- a/dsRes/pom.xml +++ b/dsRes/pom.xml @@ -38,7 +38,12 @@ cos ${jfinal-cos.version} - + + + org.neo4j.driver + neo4j-java-driver + 5.28.5 + com.alibaba diff --git a/dsRes/src/main/java/com/dsideal/Res/Neo4jDemoController.java b/dsRes/src/main/java/com/dsideal/Res/Neo4jDemoController.java new file mode 100644 index 00000000..7e8538d7 --- /dev/null +++ b/dsRes/src/main/java/com/dsideal/Res/Neo4jDemoController.java @@ -0,0 +1,29 @@ +package com.dsideal.Res; + +import com.dsideal.Res.Plugin.Neo4jConfig; +import com.jfinal.core.Controller; +import org.neo4j.driver.*; +import org.neo4j.driver.Record; +import org.neo4j.driver.types.Node; + +public class Neo4jDemoController extends Controller { + private Neo4jConfig neo4jConfig = new Neo4jConfig(); + + public void index() { + // 获取 Neo4j 驱动 + Driver driver = neo4jConfig.getDriver(); + + // 执行 Cypher 查询 + try (Session session = driver.session()) { + String query = "MATCH (n) RETURN n"; + Result result = session.run(query); + + // 处理查询结果 + while (result.hasNext()) { + Record record = result.next(); + Node node = record.get("n").asNode(); + System.out.println(node.get("name").asString()); + } + } + } +} \ No newline at end of file diff --git a/dsRes/src/main/java/com/dsideal/Res/Plugin/Neo4jConfig.java b/dsRes/src/main/java/com/dsideal/Res/Plugin/Neo4jConfig.java new file mode 100644 index 00000000..df1ba43c --- /dev/null +++ b/dsRes/src/main/java/com/dsideal/Res/Plugin/Neo4jConfig.java @@ -0,0 +1,23 @@ +package com.dsideal.Res.Plugin; + +import org.neo4j.driver.AuthTokens; +import org.neo4j.driver.Driver; +import org.neo4j.driver.GraphDatabase; + +public class Neo4jConfig { + private Driver driver; + + public void init(String uri, String user, String password) { + driver = GraphDatabase.driver(uri, AuthTokens.basic(user, password)); + } + + public Driver getDriver() { + return driver; + } + + public void close() { + if (driver != null) { + driver.close(); + } + } +} \ No newline at end of file diff --git a/dsRes/src/main/java/com/dsideal/Res/ResApplication.java b/dsRes/src/main/java/com/dsideal/Res/ResApplication.java index fc6cec05..1cea924a 100644 --- a/dsRes/src/main/java/com/dsideal/Res/ResApplication.java +++ b/dsRes/src/main/java/com/dsideal/Res/ResApplication.java @@ -6,6 +6,7 @@ import com.dsideal.Res.Base.Controller.BaseController; import com.dsideal.Res.Index.IndexController; import com.dsideal.Res.Interceptor.*; import com.dsideal.Res.Model._MappingKit; +import com.dsideal.Res.Plugin.Neo4jConfig; import com.dsideal.Res.Res.Controller.ResourceController; import com.dsideal.Res.Util.LogBackLogFactory; import com.jfinal.config.*; @@ -23,6 +24,7 @@ import java.io.File; public class ResApplication extends JFinalConfig { private static final Logger logger = LoggerFactory.getLogger(ResApplication.class); + private final Neo4jConfig neo4jConfig = new Neo4jConfig(); public static void main(String[] args) { System.out.println("当前环境: " + PropKit.getEnvPrefix()); @@ -30,7 +32,6 @@ public class ResApplication extends JFinalConfig { } - @Override public void configConstant(Constants me) { //使用LogBack @@ -48,6 +49,9 @@ public class ResApplication extends JFinalConfig { me.add("/base", BaseController.class); //资源管理 me.add("/res", ResourceController.class); + + //Neo4j配置 + me.add("/neo4j", Neo4jDemoController.class); } @Override @@ -87,6 +91,9 @@ public class ResApplication extends JFinalConfig { PropKit.getInt("redis.port"), 10 * 1000, null); //启动redis组件 me.add(redis); + + // 配置 Neo4j + neo4jConfig.init("bolt://localhost:7687", "neo4j", "DsideaL4r5t6y7u"); } /** @@ -128,5 +135,14 @@ public class ResApplication extends JFinalConfig { public void onStart() { //打印 启动Logo System.out.println(FileUtil.readUtf8String("logo.txt")); + + // JFinal 启动时初始化 Neo4j 配置 + //neo4jConfig.init("bolt://localhost:7687", "neo4j", "password"); + } + + @Override + public void onStop() { + // JFinal 停止时关闭 Neo4j 连接 + neo4jConfig.close(); } }