JDOQLでクエリを実行する場合、宣言型バージョンと単一文字列バージョンの使用にはパフォーマンスの違いがあります。
JDOQLドキュメントの例:
//Declarative JDOQL :
Query q = pm.newQuery(org.jpox.Person.class, "lastName == \"Jones\" && age < age_limit");
q.declareParameters("double age_limit");
List results = (List)q.execute(20.0);
//Single-String JDOQL :
Query q = pm.newQuery("SELECT FROM org.jpox.Person WHERE lastName == \"Jones\"" +
" && age < :age_limit PARAMETERS double age_limit");
List results = (List)q.execute(20.0);
パフォーマンス以外に、一方が他方よりも使用する方が良い理由はありますか、それとも私たちがより快適に感じる理由はありますか。