Как сохранить объект org.neo4j.ogm.session.SessionFactory - PullRequest
0 голосов
/ 03 декабря 2018

В приложении мы используем только OGM и не SpringBoot или связанные API, в нашем контроллере мы используем код ниже

public TopologyExtController( @Context org.neo4j.graphdb.GraphDatabaseService graphDb ) {

if( this.sessionFactory == null )
{
this.sessionFactory = new org.neo4j.ogm.session.SessionFactory(new org.neo4j.ogm.drivers.embedded.driver.EmbeddedDriver(graphDb), "com.demo.entity");
}
}

Но каждый раз, когда контроллер будет вызываться по запросу, этот код также вызывать.Может кто-то сказать, пожалуйста, это хорошая идея, чтобы вызывать вышеуказанный код каждый раз, когда приходит какой-либо запрос?Или мы должны сделать SessionFactory объект Singleton?

1 Ответ

0 голосов
/ 06 декабря 2018

Извините, я не могу вам сказать, что это хорошая идея;) Серьезно, SessionFactory должен быть создан один раз.При инициализации он будет сканировать все ваши пакеты на NodeEntity s и RelationshipEntity s, а также каждый раз создавать (встроенный) драйвер.Сделайте его своеобразным, чтобы избежать дополнительных затрат на производительность.

...