これは非常に単純に見えますが、自分で解決策を見つけられなかったとは信じられません。名前を持つ PersonBean という名前の Bean があります。ここで、文字列を受け取り、名前にその文字列が含まれている人を、大文字と小文字を区別せずに検索するファインダー メソッドを作成したいと思います。これが私の現在の EJB QL です。
SELECT OBJECT(p)
FROM Person p
WHERE (p.name LIKE ?1)
これには2つの問題があります:
- 検索で大文字と小文字を区別しないようにしたいのですが (上記では大文字と小文字が区別されます) 、EJB QL で
lower()
またはのようなものが見つかりません。upper()
その振る舞いをするために私は何ができますか?更新: 私は J2EE バージョン 1.4 と glassfish バージョン 2.1 を使用しています。 - メソッドに醜い文字列を渡す必要があります
findByString("%john%")
。次のようなものを渡すことができるように、EJB QL を作成する方法はありfindByString("john")
ますか?