最初に言わなければならないのは、私は Grails よりも Spring のバックグラウンドを持っているということです。カードを持っていない場合、後の設定に関する規則は少し気がかりです。
grails プロジェクトを検討しています。
実際にはサービスではなく、別のオブジェクトの一部である「コンポーネント」(春のコンテキストにある POJO の春の用語) がある場合、どこに配置すればよいですか? src/groovy または grails/services で? 2 番目のオプションは、テストを作成するためのより多くの機能を提供するように見えます。Grails はサービスを次のように見なすためです。
Grails のサービスは、アプリケーションのロジックの大部分を配置する場所です
grails/services ディレクトリは、すべての Springified Bean の一種のバッグのように感じます...
次の質問は、そのサービスの Spring コンテキストでコンパニオン Bean が必要な場合、コンポーネント/サービスを単体テストするにはどうすればよいですか。このコンパニオンはサービスではなく、実行時に必須であるがデフォルトの実装を使用できる他のコンポーネントです。
spring では、この種の注釈を使用して、テスト用の小さなコンテキストを簡単に作成できます。
@RunWith(SpringJUnit4ClassRunner.class)
@ContextConfiguration(locations = { "/simple-job-launcher-context.xml",
"/jobs/skipSampleJob.xml" })
Grails で同じことを行うには? @ContextConfigurationアノテーションを使用してできるように、テスト用に再利用および構成できる小さな Spring コンテキストを作成するための推奨される方法があるかどうかを知りたいです。
Grails のすべての隠された慣習により、正しい方法 (存在する場合) を使用しないことを恐れていますが、それらについての明確な説明の湖は、Spring を直接使用するように私を駆り立てます。