JPAにプリペアドステートメントを使用するように指示する方法がわかりません。
できません。これは、使用しているプロバイダーと、このような構成を公開するかどうかをどのようにするかによって異なります。
JPAは自動的に準備されたステートメントを使用していますか?
いずれの適切な提供者も、準備された文章を使用します。
条件APIはどうですか。私の推測では、動的SQLを使用しているということですか?
と同じです。一例では、Hibernateはさえ、ネイティブクエリで調製たstatmentsを使用する:
at com.mysql.jdbc.MysqlIO.sqlQueryDirect(MysqlIO.java:2113)
at com.mysql.jdbc.ConnectionImpl.execSQL(ConnectionImpl.java:2568)
at com.mysql.jdbc.PreparedStatement.executeInternal(PreparedStatement.java:2113)
at com.mysql.jdbc.PreparedStatement.executeQuery(PreparedStatement.java:2275)
at org.hibernate.jdbc.AbstractBatcher.getResultSet(AbstractBatcher.java:186)
at org.hibernate.loader.Loader.getResultSet(Loader.java:1787)
at org.hibernate.loader.Loader.doQuery(Loader.java:674)
at org.hibernate.loader.Loader.doQueryAndInitializeNonLazyCollections(Loader.java:236)
at org.hibernate.loader.Loader.doList(Loader.java:2220)
(credit OO7)
を? –
私は全く証拠がありません。私は複雑な、繰り返しクエリのために準備されたステートメントを使用していることを確認するこの質問をしています。 – BetaRide
JPAプロバイダがオープンソースであるため、コードベースで「確かめる」ことができます。オープンソースを使用した(多くの)利点の1つ。 –