[ http://issues.apache.org/jira/browse/IBATIS-182?page=comments#action_12319032 ]
Ron Grabowski commented on IBATIS-182: -------------------------------------- Changing everything over to use properties: <property name="flushInterval" value="2" /> <property name="flushOnExecute" value="*.Insert" /> might make things more flexible but it also reduces the benefits of having a structured XML document. I'm sure there is a happy medium somewhere between the two. > Add global cache declaration > ---------------------------- > > Key: IBATIS-182 > URL: http://issues.apache.org/jira/browse/IBATIS-182 > Project: iBatis for Java > Type: New Feature > Components: SQL Maps > Versions: 2.2.0, 2.2.5 > Environment: All > Reporter: agharta > > Can i suggest a new feature?? > I suggest a global cache declaration, available for many sqlmap files. > Example: > Now, into a sqlMap file: > <cacheModel id="cache" readOnly="true" serialize="true" type="LRU"> > <flushOnExecute statement="Author.insertAuthor"/> > <flushOnExecute statement="Author.updateAuthorById"/> > <flushOnExecute statement="Author.deleteAuthorById"/> > <property name="size" value="100000"/> > <flushInterval hours="24"/> > </cacheModel> > Ok? This cache is valid only into this sqlmap file. > So, following Spring's idea, if i have many sqlmap files and i want to extend > the same cache declaration.... > //into sqlMapConfig file or another dedicated file > <cacheMap namespace="GlobalCache"> //new definition > <cacheModel id="cache" readOnly="true" serialize="true" type="LRU"> > <flushOnExecute statement="insert*"/> > <flushOnExecute statement="update*"/> > <flushOnExecute statement="delete*"/> > <property name="size" value="100000"/> > <flushInterval hours="24"/> > </cacheModel> > </cacheMap> > So, the sqlMap call the global cache model with the > useStatementNamespaces="true" setted into sqlmapconfig file (therefore many > global cache are availables) > <statement id="getAuthorById" parameterClass="java.lang.Integer" > resultMap="get-author-result" cacheModel="GlobalCache.cache" > > <include refid="select"/> > WHERE ID = #value# > </statement> > With this feature we'll save a lot of redundant code. > I suggest a cache definition also into insert/update/delete statements, to > allow the internal or "global" cache selection. > Is it possible?? > Thanks a lot for reply! > Regards, > Agharta -- 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