package com.fly.demo;
import org.neo4j.graphdb.GraphDatabaseService;
import org.neo4j.graphdb.Node;
import org.neo4j.graphdb.Result;
import org.neo4j.graphdb.Transaction;
import org.neo4j.graphdb.factory.GraphDatabaseFactory;
import org.neo4j.io.fs.FileUtils;
import java.io.File;
import java.io.IOException;
import java.util.*;
/**
* 使用Cypher(cql)实现分页(嵌入式方式)
*/
public class PageData {
private static final File DB_PATH = new File("demo/neo4j-page.db");
private static GraphDatabaseService graphDb;
public PageData(){
graphDb = new GraphDatabaseFactory().newEmbeddedDatabase(DB_PATH);
registerShutdownHook();
}
public static void main(String...args) throws IOException {
FileUtils.deleteRecursively(DB_PATH);
//create data
PageData pageData = new PageData();
for (int i = 0; i < 20; i++) {
pageData.createNode("test" + i);
}
//list page
Map params = new HashMap<>();
params.put("name", "(?i)test.*");
params.put("skip", 0);
params.put("limit", 10);
Map page = pageData.findPage(params);
System.out.println("==page list==");
for (Map list : (List