Author: cbegin
Date: Fri Jan 9 23:21:36 2009
New Revision: 733239
URL: http://svn.apache.org/viewvc?rev=733239&view=rev
Log:
Added join test...worked on first try! Bed time.
Modified:
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
ibatis/trunk/java/ibatis-3/version.properties
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=733239&r1=733238&r2=733239&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 9 23:21:36 2009
@@ -176,7 +176,7 @@
}
@Test
- public void shouldSelectBlogWithPostsUsingSubSelect() throws Exception {
+ public void shouldSelectBlogWithPostsAndAuthorUsingSubSelects() throws
Exception {
SqlSession session = sqlMapper.openSession();
try {
Blog blog = (Blog)
session.selectOne("com.domain.BlogMapper.selectBlogWithPostsUsingSubSelect", 1);
@@ -191,6 +191,21 @@
}
@Test
+ public void shouldSelectBlogWithPostsAndAuthorUsingJoin() throws Exception {
+ SqlSession session = sqlMapper.openSession();
+ try {
+ Blog blog = (Blog)
session.selectOne("com.domain.BlogMapper.selectBlogJoinedWithPostsAndAuthor",
1);
+ 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();
+ }
+ }
+
+ @Test
public void shouldThrowExceptionIfMappedStatementDoesNotExist() throws
Exception {
SqlSession session = sqlMapper.openSession();
try {
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=733239&r1=733238&r2=733239&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 9 23:21:36 2009
@@ -21,4 +21,33 @@
select * from Post where blog_id = #{blog_id}
</select>
+ <resultMap id="joinedAuthor" type="domain.blog.Author">
+ <id column="id" property="id" />
+ <result property="username" column="username" />
+ <result property="password" column="password" />
+ <result property="email" column="email" />
+ <result property="bio" column="bio" />
+ <result property="favouriteSection" column="favourite_section" />
+ </resultMap>
+
+ <resultMap id="joinedPost" type="domain.blog.Post">
+ <id column="id" property="id" />
+ </resultMap>
+
+
+ <resultMap id="blogJoinedWithPostsAndAuthor" type="Blog">
+ <id property="id" column="id" />
+ <result property="title" column="title" />
+ <association property="author" column="author_id"
resultMap="selectAuthorWithInlineParams"/>
+ <collection property="posts" column="id" resultMap="joinedPost" />
+ </resultMap>
+
+ <select id="selectBlogJoinedWithPostsAndAuthor" parameterType="int"
resultMap="blogWithPosts">
+ select * from Blog B
+ inner join Post P on B.id = P.blog_id
+ inner join Author A on B.author_id = A.id
+ where B.id = #{id}
+ </select>
+
+
</mapper>
\ No newline at end of file
Modified: ibatis/trunk/java/ibatis-3/version.properties
URL:
http://svn.apache.org/viewvc/ibatis/trunk/java/ibatis-3/version.properties?rev=733239&r1=733238&r2=733239&view=diff
==============================================================================
--- ibatis/trunk/java/ibatis-3/version.properties (original)
+++ ibatis/trunk/java/ibatis-3/version.properties Fri Jan 9 23:21:36 2009
@@ -1,5 +1,5 @@
#Build version info
-#Sun Jan 04 18:39:04 MST 2009
+#Fri Jan 09 23:57:44 MST 2009
version=3.0.0
-buildDate=2009/01/04 18\:39
-buildNum=108
+buildDate=2009/01/09 23\:57
+buildNum=110