Я пытаюсь использовать «Hello World» для Neo4j. Проблема в том, что когда я загружаю сервер и проверяю браузер neo4j (localhost: 7474), я не вижу графической визуализации моих узлов.Neo4j - Ошибка визуализации браузера
import java.io.File;
import org.neo4j.graphdb.Direction;
import org.neo4j.graphdb.GraphDatabaseService;
import org.neo4j.graphdb.Node;
import org.neo4j.graphdb.Relationship;
import org.neo4j.graphdb.RelationshipType;
import org.neo4j.graphdb.Transaction;
import org.neo4j.graphdb.factory.GraphDatabaseFactory;
public class MyFirstMain
{
private static final String DB_PATH = "/neo4j/data/graph.db";
public String greeting;
// START SNIPPET: vars
GraphDatabaseService graphDb;
Node firstNode;
Node secondNode;
Relationship relationship;
// END SNIPPET: vars
// START SNIPPET: createReltype
private static enum RelTypes implements RelationshipType
{
KNOWS
}
// END SNIPPET: createReltype
public static void main(final String[] args)
{
MyFirstMain hello = new MyFirstMain();
hello.createDb();
// hello.removeData();
// hello.shutDown();
}
void createDb()
{
// START SNIPPET: startDb
graphDb = new GraphDatabaseFactory().newEmbeddedDatabase(DB_PATH);
registerShutdownHook(graphDb);
// END SNIPPET: startDb
// START SNIPPET: transaction
try (Transaction tx = graphDb.beginTx())
{
// Database operations go here
// END SNIPPET: transaction
// START SNIPPET: addData
firstNode = graphDb.createNode();
firstNode.setProperty("message", "Hello, ");
secondNode = graphDb.createNode();
secondNode.setProperty("message", "World!");
relationship = firstNode.createRelationshipTo(secondNode, RelTypes.KNOWS);
relationship.setProperty("message", "brave Neo4j ");
// END SNIPPET: addData
// START SNIPPET: readData
System.out.print(firstNode.getProperty("message"));
System.out.print(relationship.getProperty("message"));
System.out.print(secondNode.getProperty("message"));
// END SNIPPET: readData
greeting = ((String) firstNode.getProperty("message"))
+ ((String) relationship.getProperty("message"))
+ ((String) secondNode.getProperty("message"));
// START SNIPPET: transaction
tx.success();
}
// END SNIPPET: transaction
}
// START SNIPPET: shutdownHook
private static void registerShutdownHook(final GraphDatabaseService graphDb)
{
// Registers a shutdown hook for the Neo4j instance so that it
// shuts down nicely when the VM exits (even if you "Ctrl-C" the
// running application).
Runtime.getRuntime().addShutdownHook(new Thread()
{
@Override
public void run()
{
graphDb.shutdown();
}
});
}
// END SNIPPET: shutdownHook
}
Я НЕ хочу использовать что-либо еще, кроме встроенного браузера neo4j. Как мне продолжить?
Заранее спасибо.
Оставляя в стороне путь db_path (где я помещал звезду как общее имя здесь, в SO), я сделал то, что вы предложили. Кажется, что db работает, но, тем не менее, визуальных представлений моих узлов нет. : S – harris21
И вам нужно запустить запрос, чтобы увидеть ваши узлы. Но только если вы сделаете это. –
Я сделал это и попытался использовать MATCH n RETURN n LIMIT 25, который neo4j предоставляет по умолчанию для всех узлов. Я получил 0 взамен, хотя узлы правильно настроены. – harris21