tl  tr
  Home | Tutorials | Articles | Videos | Products | Tools | Search
Interviews | Open Source | Tag Cloud | Follow Us | Bookmark | Contact   
 Spring > JDBC > Row Mapper

Row Mapper 

Spring JDBC Framework simplifies the use of JDBC and helps to avoid common errors. The following example shows querying for list of objects using an implementation of RowMapper interface.


File Name  :  
/SpringJDBC001/conf/basic/applicationContext.xml 

File Name  :  
com/bethecoder/tutorials/spring3/basic/BugStat.java 
   
package com.bethecoder.tutorials.spring3.basic;

public class BugStat {

  private int bugStatId;
  private String bugStatus;
  private int bugCount;
  
  public BugStat() {
  }

  public BugStat(int bugStatId, String bugStatus, int bugCount) {
    super();
    this.bugStatId = bugStatId;
    this.bugStatus = bugStatus;
    this.bugCount = bugCount;
  }
  
  public int getBugStatId() {
    return bugStatId;
  }
  public void setBugStatId(int bugStatId) {
    this.bugStatId = bugStatId;
  }
  public String getBugStatus() {
    return bugStatus;
  }
  public void setBugStatus(String bugStatus) {
    this.bugStatus = bugStatus;
  }
  public int getBugCount() {
    return bugCount;
  }
  public void setBugCount(int bugCount) {
    this.bugCount = bugCount;
  }
  
  public String toString() {
    return "[" + bugStatId + "," + bugStatus + ", " + bugCount + "]";
  }
}
   

File Name  :  
com/bethecoder/tutorials/spring3/tests/RowMapperTest.java 
Author  :  Sudhakar KV
Email  :  [email protected]
   
package com.bethecoder.tutorials.spring3.tests;

import java.sql.ResultSet;
import java.sql.SQLException;
import java.util.List;

import javax.sql.DataSource;

import org.springframework.context.ApplicationContext;
import org.springframework.context.support.ClassPathXmlApplicationContext;
import org.springframework.jdbc.core.JdbcTemplate;
import org.springframework.jdbc.core.RowMapper;

import com.bethecoder.tutorials.spring3.basic.BugStat;

public class RowMapperTest {

  /**
   @param args
   */
  public static void main(String[] args) {
    
    /**
     * Initialize context and get the JdbcTemplate
     */
    ApplicationContext appContext = new ClassPathXmlApplicationContext("applicationContext.xml");
    DataSource dataSource = (DataSourceappContext.getBean("dataSource");
    JdbcTemplate template = new JdbcTemplate(dataSource);

    List<BugStat> names = template.query("select * from BUG_STAT"new RowMapper<BugStat>() {

      @Override
      public BugStat mapRow(ResultSet rs, int arg1throws SQLException {
        return new BugStat(rs.getInt("ID")
            rs.getString("STATUS")
            rs.getInt("COUNT"));
      }
      
    });
    
    System.out.println(names);
  }

}
   

It gives the following output,
[[1,NEW, 8], [2,ASSIGNED, 12], [3,RESOLVED, 16], 
	[4,REOPEN, 2], [5,VERIFIED, 16], [6,CLOSED, 6]]



 
  


  
bl  br