Author: cbegin
Date: Fri Jan 2 22:23:21 2009
New Revision: 730920
URL: http://svn.apache.org/viewvc?rev=730920&view=rev
Log:
Added association element
Modified:
ibatis/trunk/java/ibatis-3/ibatis-3-core/src/main/java/org/apache/ibatis/parser/MapperParser.java
ibatis/trunk/java/ibatis-3/ibatis-3-core/src/main/java/org/apache/ibatis/parser/ibatis-mapper-3.dtd
ibatis/trunk/java/ibatis-3/ibatis-3-core/src/test/java/org/apache/ibatis/api/SqlSessionTest.java
ibatis/trunk/java/ibatis-3/ibatis-3-core/src/test/java/org/apache/ibatis/parser/BlogMapper.xml
Modified:
ibatis/trunk/java/ibatis-3/ibatis-3-core/src/main/java/org/apache/ibatis/parser/MapperParser.java
URL:
http://svn.apache.org/viewvc/ibatis/trunk/java/ibatis-3/ibatis-3-core/src/main/java/org/apache/ibatis/parser/MapperParser.java?rev=730920&r1=730919&r2=730920&view=diff
==============================================================================
---
ibatis/trunk/java/ibatis-3/ibatis-3-core/src/main/java/org/apache/ibatis/parser/MapperParser.java
(original)
+++
ibatis/trunk/java/ibatis-3/ibatis-3-core/src/main/java/org/apache/ibatis/parser/MapperParser.java
Fri Jan 2 22:23:21 2009
@@ -208,6 +208,13 @@
resultMappings.add(builder.build());
}
+ // <association property="" column="" javaType="" select="" resultMap=""/>
+ @Nodelet("/mapper/resultMap/association")
+ public void resultMapAssociationElement(NodeletContext context) throws
Exception {
+ ResultMapping.Builder builder = buildResultMappingFromContext(context);
+ resultMappings.add(builder.build());
+ }
+
// <discriminator column="" javaType="" jdbcType="">
@Nodelet("/mapper/resultMap/discriminator")
public void resultMapDiscriminatorElement(NodeletContext context) throws
Exception {
Modified:
ibatis/trunk/java/ibatis-3/ibatis-3-core/src/main/java/org/apache/ibatis/parser/ibatis-mapper-3.dtd
URL:
http://svn.apache.org/viewvc/ibatis/trunk/java/ibatis-3/ibatis-3-core/src/main/java/org/apache/ibatis/parser/ibatis-mapper-3.dtd?rev=730920&r1=730919&r2=730920&view=diff
==============================================================================
---
ibatis/trunk/java/ibatis-3/ibatis-3-core/src/main/java/org/apache/ibatis/parser/ibatis-mapper-3.dtd
(original)
+++
ibatis/trunk/java/ibatis-3/ibatis-3-core/src/main/java/org/apache/ibatis/parser/ibatis-mapper-3.dtd
Fri Jan 2 22:23:21 2009
@@ -37,7 +37,7 @@
typeHandler CDATA #IMPLIED
>
-<!ELEMENT resultMap (constructor?,id*,result*,collection*, discriminator?)>
+<!ELEMENT resultMap (constructor?,id*,result*,association*,collection*,
discriminator?)>
<!ATTLIST resultMap
id CDATA #REQUIRED
type CDATA #REQUIRED
@@ -75,6 +75,17 @@
typeHandler CDATA #IMPLIED
>
+<!ELEMENT association EMPTY>
+<!ATTLIST association
+property CDATA #REQUIRED
+column CDATA #IMPLIED
+javaType CDATA #IMPLIED
+jdbcType CDATA #IMPLIED
+select CDATA #IMPLIED
+resultMap CDATA #IMPLIED
+typeHandler CDATA #IMPLIED
+>
+
<!ELEMENT discriminator (case+)>
<!ATTLIST discriminator
column CDATA #IMPLIED
Modified:
ibatis/trunk/java/ibatis-3/ibatis-3-core/src/test/java/org/apache/ibatis/api/SqlSessionTest.java
URL:
http://svn.apache.org/viewvc/ibatis/trunk/java/ibatis-3/ibatis-3-core/src/test/java/org/apache/ibatis/api/SqlSessionTest.java?rev=730920&r1=730919&r2=730920&view=diff
==============================================================================
---
ibatis/trunk/java/ibatis-3/ibatis-3-core/src/test/java/org/apache/ibatis/api/SqlSessionTest.java
(original)
+++
ibatis/trunk/java/ibatis-3/ibatis-3-core/src/test/java/org/apache/ibatis/api/SqlSessionTest.java
Fri Jan 2 22:23:21 2009
@@ -169,6 +169,8 @@
Assert.assertEquals("Jim Business", blog.getTitle());
Assert.assertEquals(2, blog.getPosts().size());
Assert.assertEquals("Corn nuts",blog.getPosts().get(0).getSubject());
+ Assert.assertEquals(101,blog.getAuthor().getId());
+ Assert.assertEquals("jim",blog.getAuthor().getUsername());
} finally {
session.close();
}
Modified:
ibatis/trunk/java/ibatis-3/ibatis-3-core/src/test/java/org/apache/ibatis/parser/BlogMapper.xml
URL:
http://svn.apache.org/viewvc/ibatis/trunk/java/ibatis-3/ibatis-3-core/src/test/java/org/apache/ibatis/parser/BlogMapper.xml?rev=730920&r1=730919&r2=730920&view=diff
==============================================================================
---
ibatis/trunk/java/ibatis-3/ibatis-3-core/src/test/java/org/apache/ibatis/parser/BlogMapper.xml
(original)
+++
ibatis/trunk/java/ibatis-3/ibatis-3-core/src/test/java/org/apache/ibatis/parser/BlogMapper.xml
Fri Jan 2 22:23:21 2009
@@ -9,6 +9,7 @@
<resultMap id="blogWithPosts" type="Blog">
<id property="id" column="id" />
<result property="title" column="title" />
+ <association property="author" column="author_id"
select="com.domain.AuthorMapper.selectAuthorWithInlineParams"/>
<collection property="posts" column="id" select="selectPostsForBlog" />
</resultMap>