package com.in28minutes.example.spring.examples; import java.sql.ResultSet; import java.sql.SQLException; import javax.sql.DataSource; import org.springframework.jdbc.core.JdbcTemplate; import org.springframework.jdbc.core.RowMapper; public class SpringJdbcExample { private DataSource dataSource; public void setDataSource(DataSource dataSource) { this.dataSource = dataSource; } public Employee printEmployee(Integer id) { String SQL = "SELECT id, name, age FROM Employee"; Employee employee = new JdbcTemplate(dataSource).queryForObject(SQL, new Object[] { id }, new EmployeeMapper()); return employee; } } class EmployeeMapper implements RowMapper<Employee> { @Override public Employee mapRow(ResultSet rs, int rowNum) throws SQLException { Employee employee = new Employee(); employee.setId(rs.getInt("id")); employee.setName(rs.getString("name")); employee.setAge(rs.getInt("age")); return employee; } } class Employee { private Integer age; private String name; private Integer id; public void setAge(Integer age) { this.age = age; } public Integer getAge() { return age; } public void setName(String name) { this.name = name; } public String getName() { return name; } public void setId(Integer id) { this.id = id; } public Integer getId() { return id; } }