我目前正在開發Spring Roo/JPA應用程序,並且最近我根據JPA繼承切換到域模型。總結我的領域模型,我有一個抽象Member
實體,該實體被兩個實體分類:Male
和Female
。我想避免總是注入兩個服務依賴關係(一個處理Male
實體,另一個處理Female
實體)。在所有我的Spring MVC控制器中,我希望避免始終注入兩個服務依賴關係(一個處理Male
實體,另一個處理Female
實體)。我寧願(具有相應的MemberRepository
在一起)有一個MemberService
服務,將返回一個Male
實例或Female
實例。JPA繼承,Spring Roo和Spring Data的設計問題JPA
是上述可能使用Spring Roo的註釋,比如這一個:
@RooService(domainTypes = { Member.class })
還是那一個:@RooJpaRepository(domainType = Member.class)
?
例如,將這個Member findByEmail(String email);
返回一個對象,我可以投要麼在Female
或Male
類型?
更普遍,什麼是在春天的控制器和Spring服務水平,以應對實體產業的最佳實踐?
感謝卡洛斯。這個解決方案的麻煩是我需要兩個服務(男性和女性)在每個處理男性和女性實例的控制器中。此外,我的控制器代碼變得醜陋的條件邏輯,以檢查我是否需要使用一個或另一個服務... – balteo
我懷疑女性和男性在你的業務中有類似的責任,因爲你想在同一個控制器中使用兩個,我認爲你的解決方案是寫一個類的性別屬性的成員... –
我想過,但後來我使用繼承的功能... – balteo