2017-11-16 7 views
1

私はモンゴリポジトリインタフェースのカスタムクエリメソッドを追加しました:Springデータの単一のfindyByメソッドでANDとORを使用してMonogDBにアクセスできますか?

次の基準を満たす従業員を返して
Employee findByFirstNameAndLastName(Stirng firstName, String lastName); 

//姓と最後の名前の上

メソッドは本当にうまくいく、すべてSpring Dataのおかげです。

はしかし、私はこのような何かをしたい:

次の基準に従って従業員の詳細情報を返す必要があります上記の方法
Employee findByFirstNameAndLastNameOrDesignation(Stirng firstName, String lastName, String designation); 

//姓AND(最終氏名又は名称)

ANDとORを1つの方法で使用できますか?

+0

この場合、CustomRepositoryが必要です。 –

答えて

1

SpringDataは強力ですが、それほど強力ではありませんが、 SpringDataはあなたが望むものを知っている方法はありません。

1)Aおよび(BまたはC)

または

2)(AおよびB)またはC 等...

@NamedQueryまたは@Queryを使用できます。

また、Bool代数を利用することもできます。 findByAandB_AandC:例

A及び(BまたはC)==(A及びB)又は(A及びC)

ので名前を以下のメソッドを持つことができるため。

関連する問題