-1

Factory postfixは何の略ですか?

4

3 に答える 3

4

ファクトリオブジェクトは、他のオブジェクトの作成(インスタンス化)を唯一の目的とするオブジェクトです。NHibernateはSessionFactoryを使用してISessionの作成を管理します。

同じ方法で、ProxyFactoryFactoryはプロキシを生成できるファクトリを作成します。それが解決するより大きな問題は、2つの異なるモジュールが連携するために互いの実装の詳細(つまり具体的なインスタンス)を理解する必要がないように、コードの抽象化のレベルを維持できることです。

セッションを開きたいときに新しいNHibernateSessionImplを作成する必要がある場合は、ローカルスコープですべての依存関係を提供できる必要があります。これは、実際にセッションを作成するNHibernateのSessionFactoryImplからのコードです。

        SessionImpl session = new SessionImpl(connection, this, autoClose, timestamp, sessionLocalInterceptor ?? interceptor,
                                              settings.DefaultEntityMode, settings.IsFlushBeforeCompletionEnabled,
                                              settings.IsAutoCloseSessionEnabled, settings.ConnectionReleaseMode);

私はむしろただ使用したい

sessionFactory.OpenSession();

それらの依存関係のすべてを管理する必要があるよりも;)

于 2010-09-24T08:11:02.150 に答える
3

セッションを作成するのは唯一の責任であるため、セッションを生成するファクトリです。

于 2010-09-24T06:40:12.220 に答える
3

工場デザインパターンです。オブジェクトを作成するクラスです。セッションファクトリはセッションを作成します。

于 2010-09-24T06:58:20.913 に答える