2015-01-28 2 views
0

При объявлении и использовании глобальных переменных внутри Drools глобальные переменные полностью привязаны к сеансу в том смысле, что после закрытия сеанса также удаляются глобальные переменные?Связаны ли глобальные переменные Drools с сеансом?

Есть ли способ хранения данных в памяти слюни, к которым можно получить доступ посредством многочисленных сеансов в любой момент времени, без необходимости перезагрузки?

ответ

1

DRL global является POJO, которое существует до тех пор, пока существует хотя бы одна ссылка на него. После setGlobal сеанс сохраняет одну (дополнительную) ссылку, которая становится доступной через глобальное имя, благодаря компилятору DRL. Если сеанс размещен, эта ссылка испаряется.

Термин «Память Дролов» не имеет значения. Существует рабочая память сеанса, которая представляет собой контейнер для POJO, которые были вставлены, чтобы стать фактами; если сеанс размещен, эти ссылки отбрасываются. Есть глобалы. И в коде DRL вы можете получить доступ ко всему, что было импортировано, включая (общедоступные) статические переменные в Java-классах.

Смежные вопросы