Re: Re: [iBATIS3] SQL Parsing Question

2009-06-02 Thread Clinton Begin
JSF uses #{} for binding.  This is meant to be consistent with that (even
though I'm not a fan of JSF, it's at least one reference for consistency).
Similarly ANT and many other projects use ${} for direct token/value
replacement, usually with properties.

Now we need something in between... direct text replacement for parameters.

That said, I've seen both :param and @param used in various frameworks and
databases.

Clinton





On Tue, Jun 2, 2009 at 3:30 PM, Jason King  wrote:

> Might I suggest if you're going to change the tokens perhaps using :{}
> (that's colon) for prepared statement parameters would be in order.  It
> matches how prepared statement parameters are identified in most host
> environments.
>
> I suspect the #{} usage may be a nod to Cold Fusion but that's the only
> other environment I know that uses # rather than :.
>
>
>
> *On Tue 02/06/09 16:20 , Clinton Begin sent:
> *
>
> That was a challenge i had... Unfortunately, it will be parsed at statement
> execution time as a string replacement, not at map build time with the
> passed in properties.  It's an inconsistency... :-/
>  In Statements:
> #{}  == Prepared Statement Parameter
> ${}  == String replacement at execution time for statements
>
>  In Element Attributes:
>  will be replaced at map build time, using the properties as values...
>
>  To separate the concepts, we'd have to introduce another token, perhaps
> ${}  == Replaced at map build time, using the properties as values
> (consistent with element/attribute)
> #{}  == Prepared Statement Parameter
> @{} == String replacement at execution time for statements
>
>  It might not be hard to change that, I think it's in one place in the
> code.
>
>  Clinton
>
>  On Tue, Jun 2, 2009 at 1:22 PM, Jeff Butler wrote:
>
>> Hi Clinton,
>>
>> Sorry to ask without trying it, call me lazy...
>>
>> Can we do something like this:
>>
>> #{myProperty,typeHandler=${myTypeHandler}}
>>
>> In other words, does the string replacement parse run before the parameter
>> parse?
>>
>> This would simplify things for Ibator, but is also similar to an open
>> request with iBATIS 2 - http://issues.apache.org/jira/browse/IBATIS-599
>>
>>
>> Thanks!
>> Jeff Butler
>>
>>
>
> --
> Msg sent via Internet America Webmail - www.internetamerica.com


Re: Re: [iBATIS3] SQL Parsing Question

2009-06-02 Thread Jason King
 

Might I suggest if you're going to change the tokens perhaps using
:{} (that's colon) for prepared statement parameters would be in
order.  It matches how prepared statement parameters are identified
in most host environments.  

I suspect the #{} usage may be a nod to Cold Fusion but that's the
only other environment I know that uses # rather than :.
 On Tue 02/06/09 16:20 , Clinton Begin sent:
  That was a challenge i had... Unfortunately, it will be parsed at
statement execution time as a string replacement, not at map build
time with the passed in properties.  It's an inconsistency... :-/ 
  In Statements: #{}  == Prepared Statement Parameter ${}  ==
String replacement at execution time for statements 
  In Element Attributes:  will be replaced at map build time,
using the properties as values...  
  To separate the concepts, we'd have to introduce another token,
perhaps
 ${}  == Replaced at map build time, using the properties as
values (consistent with element/attribute) #{}  == Prepared
Statement Parameter @{} == String replacement at execution time
for statements
  It might not be hard to change that, I think it's in one place in
the code.  
  Clinton 
  On Tue, Jun 2, 2009 at 1:22 PM, Jeff Butler  wrote:
 Hi Clinton,
 Sorry to ask without trying it, call me lazy...
 Can we do something like this:
 #{myProperty,typeHandler=${myTypeHandler}}
 In other words, does the string replacement parse run before the
parameter parse?
 This would simplify things for Ibator, but is also similar to an
open request with iBATIS 2 -
http://issues.apache.org/jira/browse/IBATIS-599 [2]
 Thanks!
 Jeff Butler
-
Msg sent via Internet America Webmail - www.internetamerica.com

Links:
--
[1]
http://mail.airmail.net/javascript:top.opencompose(\'[email protected]\',\'\',\'\',\'\')
[2] http://issues.apache.org/jira/browse/IBATIS-599