In this example you will learn how to select records from the database using JdbcTemplate.queryForList()
method. This method returns a List
object which stores information selected from the table in a HashMap
object. The key
of the map is the table’s field names while the value
of the map contains the corresponding table’s field value.
package org.kodejava.spring.jdbc;
import org.springframework.jdbc.core.JdbcTemplate;
import org.springframework.jdbc.datasource.DriverManagerDataSource;
import java.util.List;
import java.util.Map;
public class SelectDemo {
public static void main(String[] args) {
// Creates a DataSource object.
DriverManagerDataSource ds = new DriverManagerDataSource();
ds.setDriverClassName("com.mysql.cj.jdbc.Driver");
ds.setUrl("jdbc:mysql://localhost/musicdb");
ds.setUsername("root");
ds.setPassword("");
// Creates an instance of JdbcTemplate.
JdbcTemplate template = new JdbcTemplate(ds);
// Executes a select query using queryForList() method. This
// method returns a List containing HashMap object. The key
// of the map is the table's field name and the value is
// the table's field value.
String query = "SELECT * FROM record";
List<Map<String, Object>> results = template.queryForList(query);
for (Map<String, Object> result : results) {
for (String key : result.keySet()) {
System.out.print(key + " = " + result.get(key) + "; ");
}
System.out.println();
}
}
}
Maven Dependencies
<dependencies>
<dependency>
<groupId>org.springframework</groupId>
<artifactId>spring-jdbc</artifactId>
<version>6.1.10</version>
</dependency>
<dependency>
<groupId>com.mysql</groupId>
<artifactId>mysql-connector-j</artifactId>
<version>8.4.0</version>
</dependency>
</dependencies>