Here is a sample code to perform DB operation using NamedParameterJdbcTemplate API in Spring
Spring Jdbc - NamedParameterJdbcTemplate:
private NamedParameterJdbcTemplate namedParameterJdbcTemplate;
public void createUser(User user) {
Long userId =1001; //should be generated from a DB sequece
user.setId(userId);
String insertUserSql = "INSERT INTO DSM_USERS (USER_ID,LOGIN,PASSWORD,FIRST_NAME,"
+ "LAST_NAME,PHONE_NUMBER,EMAIL,"
+ "CREATED_DATE,GROUP_ID)"
+ " VALUES (:id,:username,:password,:firstName,:lastName,"
:phoneNumber,:email,sysdate,:groupId)";
namedParameterJdbcTemplate.update(insertUserSql, new BeanPropertySqlParameterSource(user));
}
}
The above class contains createUser method, to insert user details in to DB. Instead of using '?' pointer for the db column values, we are directly using the bean property names for example ":username".