Skip to content

Instantly share code, notes, and snippets.

@heim
Created November 10, 2011 12:01
Show Gist options
  • Save heim/1354699 to your computer and use it in GitHub Desktop.
Save heim/1354699 to your computer and use it in GitHub Desktop.
Groovy jdbc-template shit
import org.junit.Test
import javax.sql.DataSource
import org.apache.commons.dbcp.BasicDataSource
import static junit.framework.Assert.assertNotNull
import org.springframework.jdbc.core.simple.SimpleJdbcTemplate
import org.springframework.jdbc.core.RowMapper
import java.sql.ResultSet
import org.joda.time.LocalDate
class TEMPPerformanceTest {
@Test
void testPerformance() {
DataSource dataSource = lagDataSource()
assertNotNull dataSource
SimpleJdbcTemplate jdbcTemplate = new SimpleJdbcTemplate(dataSource)
String sql = "SELECT * FROM TABLE";
long start_time = System.currentTimeMillis()
List<ValueObject> objects = jdbcTemplate.query(sql, new RowRowRowYourMapperGentlyDownTheStream());
}
private static class RowRowRowYourMapperGentlyDownTheStream implements RowMapper<Leieforhold> {
public Leieforhold mapRow(ResultSet rs, int i) {
Leieforhold l = new Leieforhold()
l.id = rs.getInt("id")
l.kontraktTilDato = rs.getDate("FIELD1")
l.utleieenhet = new Utleieenhet(rs.getString("FIELD2"))
return l;
}
}
DataSource lagDataSource() {
BasicDataSource dataSource = new BasicDataSource();
dataSource.setDriverClassName("com.microsoft.sqlserver.jdbc.SQLServerDriver");
dataSource.setUrl("jdbc:sqlserver://URL:1433;databaseName=SCHEMA");
dataSource.setUsername("USER");
dataSource.setPassword("SECRET");
return dataSource;
}
}
@heim
Copy link
Author

heim commented Nov 13, 2011

Du må skrive like

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment