10.5. EJB-QL/HQL での EL の使用


Seam 管理永続コンテキストを使用する場合や @PersistenceContext でコンテナ管理永続コンテキストをインジェクトする場合は、常に Seam は EntityManager または Session オブジェクトをプロキシします。 これにより、 EL 式をクエリ文字列内で問題なく効果的に使用することができます。 たとえば、 次を見てください。
User user = em.createQuery("from User where username=#{user.username}")
                          .getSingleResult();
Copy to Clipboard Toggle word wrap
上記の例は、 以下の例と同等です。
User user = em.createQuery("from User where username=:username")
                          .setParameter("username", user.getUsername()) 
                          .getSingleResult();
Copy to Clipboard Toggle word wrap

警告

以下の形式は使用しないでください。SQL インジェクション攻撃に脆弱性があり、非効率でもあります。
User user = em.createQuery("from User where username=" + user.getUsername()).getSingleResult(); //BAD!
Copy to Clipboard Toggle word wrap
トップに戻る
Red Hat logoGithubredditYoutubeTwitter

詳細情報

試用、購入および販売

コミュニティー

Red Hat ドキュメントについて

Red Hat をお使いのお客様が、信頼できるコンテンツが含まれている製品やサービスを活用することで、イノベーションを行い、目標を達成できるようにします。 最新の更新を見る.

多様性を受け入れるオープンソースの強化

Red Hat では、コード、ドキュメント、Web プロパティーにおける配慮に欠ける用語の置き換えに取り組んでいます。このような変更は、段階的に実施される予定です。詳細情報: Red Hat ブログ.

会社概要

Red Hat は、企業がコアとなるデータセンターからネットワークエッジに至るまで、各種プラットフォームや環境全体で作業を簡素化できるように、強化されたソリューションを提供しています。

Theme

© 2026 Red Hat