InlineParameterMapParser maintains the character string without the  necessity 
by using StringTokenizer. 
---------------------------------------------------------------------------------------------------------

                 Key: IBATIS-549
                 URL: https://issues.apache.org/jira/browse/IBATIS-549
             Project: iBatis for Java
          Issue Type: Wish
          Components: SQL Maps
            Reporter: Takahiro Kido
            Priority: Minor


To maintain the property value, InlineParameterMapParser uses StringTokenizer.

StringTokenizer#nextToken uses String#substring(int start, int end).
String#substring(int start, int end) uses String(int start, int length, char[] 
data).

ex) INSERT INTO TABLE_A(COL_1,COL_2,....COL_N) 
VALUES(#VALUE_1#,#VALUE_2#,....,#VALUE_N#);
      char[] data keeps "INSERT INTO TABLE_A(COL_1,COL_2,....COL_N) 
VALUES(#VALUE_1#,#VALUE_2#,....,#VALUE_N#)".

"INSERT INTO TABLE_A(COL_1,COL_2,....COL_N) VALUES("
This character string need not be maintained. 

When String passed to StringTokenizer is made the character string since '#' of 
the first token, 
it is settled with less amount of the heap use. 

char[] data keeps "#VALUE_1#,#VALUE_2#,....,#VALUE_N#)".

If the amount of the heap use is valued, you should make a new character string 
since '#' of the first token with StringBuilder or StringBuffer beforehand. 
Because a lot of heaps are consumed oppositely when it is tried to make a 
character string new in each token, this attempt is not suitable. 

The effect of reducing the amount of the heap use concerning select and insert 
statement can be chiefly expected. 

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.

Reply via email to