0

私は休止状態とSpringMVCを使用しており、アノテーションを使用しています..子が存在する場合、親エンティティが削除されないようにしたいと思います。これで、コードで明示的に実行できますが、休止状態を介して直接実行できますか?つまり、構成ですか?

第二に、春に私はsessionFactoryをいつでも(すべてのdaoで)取得しています。セッションを取得するには、

sessionFactory.getCurrentSession()

単一のクラスでsession/sessionFactoryを取得し、それをどこでも使用する必要がありますか?

そして私は使用しています

sessionFactory.getCurrentSession()。save(batch);

sessionFactory.getCurrentSession()。delete(batch);

その後、セッションが自動的に行われるため、セッションの終了と開始について気にする必要はありません。正しいですか?

4

1 に答える 1

2
  1. これは、データベースに必要な外部キー制約によって保証されます。子がその親への外部キーを持っていて、親を削除しようとすると、データベースは削除を拒否し、例外が発生します。

  2. はい、Springはセッションを開いて現在のトランザクションに関連付け、トランザクションが終了すると自動的に閉じます。セッションの開始と終了について気にする必要はありません。セッションファクトリをDAOに注入し、必要になるたびにこのファクトリから現在のセッションを取得します。

于 2013-03-10T22:38:53.673 に答える