exporting data from Neo4j to csv using java

后端 未结 2 528
半阙折子戏
半阙折子戏 2021-01-07 15:33

what is the best methodology to export data from Neo4j to CSV, I had imported data from csv to neo4j using CSV importer in the link https://github.com/sroycode/neo4j-import.

2条回答
  •  渐次进展
    2021-01-07 15:46

    A short snippet in Groovy doing this:

    @Grab(group="org.neo4j", module="neo4j-cypher", version="1.9")
    @Grab(group='net.sf.opencsv', module='opencsv', version='2.3') 
    import org.neo4j.kernel.EmbeddedGraphDatabase
    import org.neo4j.cypher.javacompat.ExecutionEngine
    import au.com.bytecode.opencsv.CSVWriter
    
    assert args, "specify location of graph.db and cypher statement"
    
    def db = new org.neo4j.kernel.EmbeddedGraphDatabase(args[0])
    def ee = new ExecutionEngine(db)
    def result = ee.execute(args[1])
    def columns = result.columns()
    
    System.out.withWriter { writer ->
        CSVWriter csv = new CSVWriter(writer)
        csv.writeNext(columns as String[])
    
        for (def row in result) {
            def values = columns.collect {row[it]}
            csv.writeNext(values as String[])
        }
    }
    db.shutdown()
    

    Of course opencsv can be used in a pure Java environment as well.

提交回复
热议问题