Hi Larry,
Larry Meadors wrote:
I don't know about the performance - a hashmap is pretty fast for
retrieval. (FYI: the constructor you use there will cause slower
performance - the default would use more memory, but be faster - using
3 or 4 as the parameter might be better, read the javadocs on that
one.)
Oh sure, I forgot about the .75 load factor. Thanks for telling me this!
I agree in this case it's better not to use the parameter at all.
The parameter checking is an interesting idea - I'm just not sure that
it makes it much less error prone - in both cases, you need to type
(or paste) the names.
It's not my idea, actually. I found it in the section "JavaBean and Map
parameters" of "iBatis in Action". It sais:
"If you create a parameter map with a bean and attempt to refer to a
property that does not exist, you will get an immediate failure when the
parameter map is loaded." I tested it now with the anonymous parameter
class I cited before and it doesn't seem to work as described: the
"There is no READABLE property named" exception is thrown only when the
query is called, not when the map is loaded. I think I got something
wrong again :)
Regards
Ilya
On 9/3/07, Ilya Boyandin <[EMAIL PROTECTED]> wrote:
Thanks, Larry!
but could you tell me why? I thought using an anonymous class has an
important advantage: it allows loading-time parameter check. Also I
think it should be faster than using HashMap. Isn't it true?
Ilya
Larry Meadors wrote:
Well, they should both do the same thing...I'd use the map. :)
Larry
On 8/31/07, Ilya Boyandin <[EMAIL PROTECTED]> wrote:
Hello all,
what should I prefer, this:
return getSqlMapClientTemplate().queryForList("listEvaluationPlans", new
Object() {
long getPersonId() { return personId; }
String getLang() { return lang; }
});
or this:
final Map<String, Object> params = new HashMap<String, Object>(2);
params.put("personId", personId);
params.put("lang", lang);
return getSqlMapClientTemplate().queryForList("listEvaluationPlans",
params);
Thanks in advance
Ilya
FH JOANNEUM Gesellschaft mbH
Rechtsform/Legal form: GmbH
Firmenbuchgericht/Court of registry: Landesgericht für ZRS Graz
Firmenbuchnummer/Company registration: FN 125888 f
DVR: 0813559
UID-Nr.: ATU 42361001