Как сохранить насыщение Webflow

#grails #spring-webflow

#grails #spring-webflow

Вопрос:

Допустим, у меня есть webflow с N состояниями. Как я могу сохранить состояние пользователя в базе данных, чтобы, если он покинет поток где-то посередине, он мог начать с того места, где остановился, при следующем входе в систему, независимо от того, какую машину он использует, когда он это делает.

Ответ №1:

Общий вопрос, вы, по сути, имеете дело с длинной транзакцией. Как правило, это действительно сложная проблема, поскольку вам приходится иметь дело с проблемами параллелизма. Однако, если вы хотите это сделать, вам, вероятно, понадобятся объекты домена, соответствующие задействованным объектам

 class ShoppingCart
{
    static belongsTo = [ person : Person ]
    static hasMany = [ item : ShoppingCartItem ]
    static hasOne = [state : ShoppingCartState ]
}
  

Вы можете использовать шаблон состояния для инкапсуляции состояния и сохранения его в БД в конце каждого перехода веб-потока.

Если ваш вариант использования проще, вы можете что-то сделать с ведением журнала аудита.