[
https://issues.apache.org/jira/browse/IBATIS-622?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
]
Clinton Begin closed IBATIS-622.
--------------------------------
Resolution: Won't Fix
iBATIS reserves the decision whether to create a new instance or reuse the
instance. Thus, iBATIS does not guarantee A1 == A2, but does guarantee that
A1.equals(A2), where A defines equals as A1.id.equals(A2.id) or all mapped
properties are equal otherwise. Join mapping will result in multiple
instances, because iBATIS does not support object identity.
> Nested Results for Association
> ------------------------------
>
> Key: IBATIS-622
> URL: https://issues.apache.org/jira/browse/IBATIS-622
> Project: iBatis for Java
> Issue Type: Bug
> Components: SQL Maps
> Affects Versions: 3.0 Beta 1
> Environment: JDK jdk1.6.0_12
> ibatis-3-core-3.0.0.190
> JavaDB 10.5.1.1
> Reporter: Bukarev Alexandr
> Priority: Critical
>
> My DDLs:
> CREATE
> TABLE APP.plugins
> (
> id INTEGER generated always as identity,
> name VARCHAR(256) NOT NULL,
> PRIMARY KEY (id),
> CONSTRAINT plugin_name UNIQUE (name)
> );
> CREATE
> TABLE APP.JSPS
> (
> ID INTEGER generated always as identity,
> NAME VARCHAR(256) NOT NULL,
> PLUGIN_ID INTEGER NOT NULL,
> PRIMARY KEY (ID),
> CONSTRAINT PLUGIN_FK FOREIGN KEY (PLUGIN_ID) REFERENCES PLUGINS (ID),
> CONSTRAINT PLUGIN_JSP_UNIQUE UNIQUE (NAME, PLUGIN_ID)
> );
> I try create theese SQLMaps:
> <mapper namespace="translateanalizer.db.JSPMapper">
> <resultMap id="JSPMap" type="JSP">
> <id property="id" column="id"/>
> <result property="name" column="name"/>
> <association property="plugin" column="jsp_plugin_id"
> resultMap="PluginMap"/>
> </resultMap>
> <resultMap id="PluginMap" type="Plugin">
> <id property="id" column="plugin_id"/>
> <result property="name" column="plugin_name"/>
> </resultMap>
> <select id="selectJSPs" resultMap="JSPMap">
> select p.name as plugin_name, p.id as plugin_id, j.name, j.id,
> j.plugin_id as jsp_plugin_id
> from app.plugins p inner join app.jsps j
> on p.id = j.plugin_id
> </select>
> </mapper>
> Then selectJSPs generates one Plugin class instanse for every row in
> ResultSet, thougth JSP relation to Plugin is "Many-To-One"
--
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.
---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]