Update records in database with JdbcTemplate

In this example we shall show you how to update records in a database using the JdbcTemplate Class provided by the Spring Framework. The JdbcTemplate class is the central class in the JDBC core package. It simplifies the use of JDBC and helps to avoid common errors. It executes core JDBC workflow, leaving application code to provide SQL and extract results. This class executes SQL queries or updates, initiating iteration over ResultSets and catching JDBC exceptions. To update records in a database using the JdbcTemplate class one should perform the following steps:

as described in the code snippet below.

package com.javacodegeeks.snippets.enterprise;
import java.sql.Types;
import javax.sql.DataSource;
import org.springframework.jdbc.core.JdbcTemplate;
import org.springframework.jdbc.datasource.DriverManagerDataSource;
public class UpdateRecordsInDatabaseWithJdbcTemplate {
	
	private static final String driverClassName = "com.mysql.jdbc.Driver";
	private static final String url = "jdbc:mysql://localhost/companydb";
	private static final String dbUsername = "jcg";
	private static final String dbPassword = "jcg";
	private static final String updateSql = "UPDATE employee SET name = ? WHERE id = ?";
	private static DataSource dataSource;
	
	public static void main(String[] args) throws Exception {
	
		dataSource = getDataSource();
		
		updateRecord(1L, "Donald");
		
	}
	
	public static void updateRecord(Long id, String name) {
		
  JdbcTemplate template = new JdbcTemplate(dataSource);
  // define query arguments
		Object[] params = { name, id};
  
		// define SQL types of the arguments
		int[] types = {Types.VARCHAR, Types.BIGINT};
  int rows = template.update(updateSql, params, types);
  
  System.out.println(rows + " row(s) updated.");
  
    }
	
	public static DriverManagerDataSource getDataSource() {
  DriverManagerDataSource dataSource = new DriverManagerDataSource();
  dataSource.setDriverClassName(driverClassName);
  dataSource.setUrl(url);
  dataSource.setUsername(dbUsername);
  dataSource.setPassword(dbPassword);
  return dataSource;
    }
	
}
CREATE TABLE `companydb`.`employee` (
  `id` INTEGER UNSIGNED NOT NULL AUTO_INCREMENT,
  `name` VARCHAR(45) NOT NULL,
  `surname` VARCHAR(45) NOT NULL,
  `title` VARCHAR(45) NOT NULL,
  `created` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP,
  PRIMARY KEY (`id`)
);

Output:

1 row(s) updated.

 
This was an example of how to update records in a database using the JdbcTemplate class provided by Spring.

Exit mobile version