私が取り組んでいるプロジェクトでは、インポート/エクスポート機能を追加しています。これは問題なく動作しています。
私が今やろうとしているのは、ユーザーが実際に何かをする前にインポートをテストし、レポートを返すことを可能にする「dryRun」と呼ばれるオプションを持つことです。
だから、私のセットアップは次のとおりです。
- Spring MVCを介してインポートデータを取得する(OpenSessionInViewを使用)
- これをドメインクラス(実際にマップされた休止状態クラス)に逆シリアル化します
- すべてをスキャンして、参照などに問題がないことを確認します。
- 私のすべてのサービスには@Transactionalがあります
これはほとんど問題ありませんが、どこかで保存がトリガーされ(保存を呼び出すことはありません)、グループ化オブジェクトが一時的な参照について文句を言っています。保存されていないため、これは正しいです。これはある種の種類だと思います。グループ化オブジェクトがマップされている別のオブジェクトを参照しているため、デフォルトモードのhibernateにはあります。では、hibernateが何も保存しないようにするにはどうすればよいですか。@TransactionalとOpenSessionInViewを削除せずに(通常の場合に必要です)
何か案は?
よろしく、モーテン