2017-10-30 22 views
1

spring-state-machineの状態、アクション、および遷移の構成情報をデータベースに格納することはできますか?考え方は、起動時にその構成データをロードし、そのデータを使用して状態マシンを作成することです。このようにして、状態、アクション、遷移をいつでも変更し、アプリケーションをリロードしてステートマシンのグラフを変更することができます。データベースからスプリングステートマシンを導出する

第2に、スプリングステートマシンが提供するpersistの機能について少し混乱しています。何らかの状態遷移をもたらすユーザによって実行されたアクションの観点から、履歴/活動ログ情報を保持することは可能ですか?または、それをリロードするのに役立つステートマシンの内部状態です。このようなアクティビティログをデータベースで利用できるようにしたい場合、スプリングステートマシンのフレームワークはそのデータを格納する機能を備えていますか?

答えて

0

デフォルトでは、スプリングステートマシンの設定をデータベースに保存することはできません。

persist()関数を使用すると、状態マシンインスタンスの状態を保持できます。

状態マシンの構成をデータベースに保存してロードする場合は、状態、アクション、および遷移のフィールドを持つ独自の構成クラスを作成する必要があります(それらの独自の実装も必要です)。

スプリングステートマシンから永続的な設定に変換するためのクラスを実装します。設定を永続化する前にそれを使用します。

ビルダーを使用して構成からスプリングステートマシンに変換する別のクラスを実装します。これを使用して、データベースからxour構成をロードした後にスプリングステートマシンを作成します。

関連する問題