2017-07-07 16 views
0

私はsqlのクエリを持っています。私はJPA Springでそれを書いています。JPA Springクエリsql

どうすればいいですか?あなたはJPQLクエリをしたい場合は

EntityManager manager = getEntityManager(); 
Query query = manager.createNativeQuery("SELECT * FROM user WHERE user.id = :id AND user.enabled = :enabled;"); 
query.setParameter("id", 3); 
query.setParameter("enabled", 1); 
Object[] user = query.getSingleResult(); 

:あなたは次のことを行う必要がありJPAでのネイティブSQLクエリを実行するには

SELECT * FROM user WHERE user.id=3 and user.enabled=1

+1

すでにsql query =に間違いがあります。 – Whencesoever

+0

jpqlクエリを実行するか、SQLを実行しますか? –

答えて

1

EntityManager manager = getEntityManager(); 
TypedQuery<User> query = manager.createQuery("SELECT u FROM User u WHERE u.id = :id AND user.enabled = :enabled;", User.class); 
query.setParameter("id", 3); 
query.setParameter("enabled", 1); 
User user = query.getSingleResult(); 

をJPQLクエリを使用していますタイプセーフなのでより良いスタイルです。データベースの特定のテーブル構造を知らなくても、エンティティに対して直接文を実行できます。

+0

仲間ありがとう! –

+0

私は助けてくれるとうれしいです。 anwereを正しいものとしてマークしてください。だからあなたの質問は答えられたように表示されます。 –