@Override public void persist(EventLog eventLog) { Timestamp now = toSqlTimestamp(Instant.now()); MapSqlParameterSource namedParameterMap = new MapSqlParameterSource(); namedParameterMap.addValue("eventType", eventLog.getEventType()); namedParameterMap.addValue("eventBodyData", eventLog.getEventBodyData()); namedParameterMap.addValue("flowId", eventLog.getFlowId()); namedParameterMap.addValue("created", now); namedParameterMap.addValue("lastModified", now); namedParameterMap.addValue("lockedBy", eventLog.getLockedBy()); namedParameterMap.addValue("lockedUntil", eventLog.getLockedUntil()); GeneratedKeyHolder generatedKeyHolder = new GeneratedKeyHolder(); jdbcTemplate.update( "INSERT INTO " + " nakadi_events.event_log " + " (event_type, event_body_data, flow_id, created, last_modified, locked_by, locked_until) " + "VALUES " + " (:eventType, :eventBodyData, :flowId, :created, :lastModified, :lockedBy, :lockedUntil)", namedParameterMap, generatedKeyHolder ); eventLog.setId((Integer) generatedKeyHolder.getKeys().get("id")); }