Make parameter maps work like inline parameters, no matter count and/or order
-----------------------------------------------------------------------------
Key: IBATIS-214
URL: http://issues.apache.org/jira/browse/IBATIS-214
Project: iBatis for Java
Type: New Feature
Components: SQL Maps
Versions: 2.1.5
Environment: iBATIS SQL Maps 2.1.5.582
Reporter: Daniel Silva
When using parameter maps and in your statement you use same parameter more
than once, you need to redeclare this parameter at your parameter map tied to
order and count of those parameters in your mapped statement.
So, in situations like this:
<select id="foo" parameterMap="fooMap">
select *
from foo a, bar b
where b.fooId = a.id
and a.myfield = ?
and b.anotherfield = ?
</select>
My fooMap parameter map must look like this:
<parameterMap id="fooMap" class="com.foo.Blah">
<parameter property="param"/>
<parameter property="param"/>
</parameterMap>
Proposal is to change the way parameter maps work currently to something like
inline parameters:
<parameterMap id="fooMap" class="com.foo.Blah">
<parameter property="param"/>
</parameterMap>
<select id="foo" parameterMap="fooMap">
select *
from foo a, bar b
where b.fooId = a.id
and a.myfield = #param#
and b.anotherfield = #param#
</select>
Maybe it could be useful to add an attribute to the <parameter/> element to
mimic the way result maps work. So we'd have something like:
<parameter property="param" inline="blah"/>
and then:
<select id="foo" parameterMap="myMap">
select *
from foo a, bar b
where b.fooId = a.id
and a.myfield = #blah#
and b.anotherfield = #blah#
</select>
Not sure 'inline' would be such a good name for this attribute so do what you
think is the best.
Any comments appreciated.
--
This message is automatically generated by JIRA.
-
If you think it was sent incorrectly contact one of the administrators:
http://issues.apache.org/jira/secure/Administrators.jspa
-
For more information on JIRA, see:
http://www.atlassian.com/software/jira