[ http://issues.apache.org/jira/browse/IBATIS-215?page=comments#action_12372175 ]
Paul Benedict commented on IBATIS-215: -------------------------------------- This issue should be closed. For complex computations, they can be done in the DAO and their value passed into the parameterClass before the query. > BSF for dynamic queries > ----------------------- > > Key: IBATIS-215 > URL: http://issues.apache.org/jira/browse/IBATIS-215 > Project: iBatis for Java > Type: New Feature > Components: SQL Maps > Reporter: Paul Benedict > > While the list of tags to form dynamic queries is suitable, they are limiting > because they stop the "dreamer from dreaming." More complex logic cannot be > addressed without creating a barrage of new tags. > I propose a new tag called <script> (or something similar) which is backed by > the Apache Bean Scripting Framework. The parameter map passed in to the > <statement> should load it into the scripting Interpreter object and expose > it for the <script> tag so that dynamic Java or JavaScript can return boolean > parameters. Obviously there is a performance hit for this and the previous > tags would be much simpler for common boolean operations, but the sky is the > limit when it comes to what you can compare inside the script. > Example: > <select id="dynamicGetAccountList" cacheModel="resultMap="account-result" > > select * from ACCOUNT > <script><expression>obj.id != null && obj.id > 0 && > obj.lastName.startsWith("B")"</expression> > where ACC_ID = #id# and > ACC_NAME = #lastName# > </script> > order by ACC_LAST_NAME > </select> > If BSF is not suitable, please look into OGNL which is popular within Apache > Tapestry and is a very good alternative. -- 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