These methods are the only ones that can be used with the new execute methods
to set parameters.
Sadly, they are not thread-safe, which is a problem considering that the Query
object is supposed to be thread-safe.
I’d like to update the description to include the expected thread behavior:
* Parameter values are stored in thread local storage so the same Query object
* can be used by multiple threads simultaneously.
/**
* Method to set the named parameters on this query prior to execution.
* If using the execute methods taking parameters then those parameter
values will override these values.
* All parameter values specified in this method will only be retained
until the subsequent query execution.
* @param namedParamMap The map of parameter values keyed by their names.
* @return This query
*/
Query<T> setNamedParameters(Map<String, ?> namedParamMap);
/**
* Method to set the values of the numbered parameters on this query prior
to execution.
* If using the execute methods taking parameters then those parameter
values will override these values.
* All parameter values specified in this method will only be retained
until the subsequent query execution.
* @param paramValues Values of the numbered parameters, in order.
* @return This query
*/
Query<T> setParameters(Object... paramValues);
Craig L Russell
Architect
[email protected]
P.S. A good JDO? O, Gasp!