@Override protected void initDao() throws Exception { super.initDao(); insertGame = new SimpleJdbcInsert(getDataSource()).withTableName("GAMES").usingColumns("player_id", "year_no", "team", "week", "opponent", " completes", "attempts", "passing_yards", "passing_td", "interceptions", "rushes", "rush_yards", "receptions", "receptions_yards", "total_td"); }
@Test public void testNoSuchTable() throws Exception { ResultSet resultSet = mock(ResultSet.class); given(resultSet.next()).willReturn(false); given(databaseMetaData.getDatabaseProductName()).willReturn("MyDB"); given(databaseMetaData.getDatabaseProductName()).willReturn("MyDB"); given(databaseMetaData.getDatabaseProductVersion()).willReturn("1.0"); given(databaseMetaData.getUserName()).willReturn("me"); given(databaseMetaData.storesLowerCaseIdentifiers()).willReturn(true); given(databaseMetaData.getTables(null, null, "x", null)).willReturn(resultSet); SimpleJdbcInsert insert = new SimpleJdbcInsert(dataSource).withTableName("x"); // Shouldn't succeed in inserting into table which doesn't exist thrown.expect(InvalidDataAccessApiUsageException.class); try { insert.execute(new HashMap<>()); } finally { verify(resultSet).close(); } }
@Override public void addAvailableResource(AvailableResource availableResource) { log.trace("addAvailableResources(availableResource: {}", availableResource); try { validate(availableResource); // if everything went ok so far, check access rights and perform additional custom validation if needed. final String uid = context.getAccessToken().getId(); userProfileHandler.validateAvailableResourceAccess(uid, availableResource); SimpleJdbcInsert jdbcInsert = new SimpleJdbcInsert(getJdbcTemplate()); jdbcInsert.withTableName("available_resource").usingGeneratedKeyColumns("id"); Map<String, Object> parameters = new HashMap<>(); parameters.put("bps_id", availableResource.getBusinessProcessId()); parameters.put("uri", availableResource.getUri()); Number key = jdbcInsert.executeAndReturnKey(new MapSqlParameterSource(parameters)); // get the primary key of the inserted available resource int id = key.intValue(); log.debug("generated id {} for new availableResource", id); commitTransaction(); AvailableResource result = getAvailableResourceById(id); notifier.notifyCreate(result); } catch (RegistryException e) { log.error(e.getDescription()); throw e; } catch (SQLException e) { log.error("addAvailableResource({})", availableResource, e); throw new RegistryException("Error storing available resource " + availableResource, e, RegistryException.Type.UNKNOWN_TECHNICAL); } }
@SuppressWarnings("SpringJavaAutowiringInspection") @Autowired public JDBCDataRepositoryImpl(NamedParameterJdbcTemplate jdbcTemplate) { this.jdbcTemplate = jdbcTemplate; this.insertIntoProject = new SimpleJdbcInsert((JdbcTemplate) jdbcTemplate.getJdbcOperations()) .withTableName("project") .usingGeneratedKeyColumns("pid"); }
public JdbcPurchaseOrderDao(DataSource dataSource) { insert = new SimpleJdbcInsert(dataSource) .withTableName("PURCHASE_ORDER") .usingGeneratedKeyColumns("PURCHASE_ORDER_ID") .usingColumns("ITEM_ID", "PAYMENT_INFO_ID", "ADDRESS"); }
JobConfigurationParameterDAO(final JdbcTemplate jdbcTemplate, final String tableName, final String schema) { this.jdbcTemplate = jdbcTemplate; this.tableName = tableName; this.simpleJdbcInsert = new SimpleJdbcInsert(jdbcTemplate) .withSchemaName(schema) .withTableName(String.format(TABLE_NAME, tableName)) .usingGeneratedKeyColumns(JobConfigurationParameterDomain.ID); this.dateFormat = new SimpleDateFormat(DomainParameterParser.DATE_FORMAT_WITH_TIMESTAMP); }
@Override @Deprecated public long insertMapGetGeneratedKey(String tableName, String keyName, Map<String, Object> mapParameter) { Assert.notNull(tableName, "表名不能为空!"); Assert.notNull(keyName, "自增字段名称不能为空!"); Assert.notNull(mapParameter, "对象map不能为空!"); jdbcInsert = jdbcInsert.withTableName(tableName).usingGeneratedKeyColumns(keyName); Number number = jdbcInsert.executeAndReturnKey(mapParameter); logger.info("生成 Key 为:[{}]:", number); return number.longValue(); }
public SimpleInsertMessageDao(DataSource dataSource) { simpleInsert = new SimpleJdbcInsert(dataSource); simpleInsert.withTableName("guestmessage") .usingColumns("name", "message", "creationTime") .setGeneratedKeyName("id"); delegate = new JdbcTemplateMessageDao(dataSource); }
public class LoginDAOImpl implements LoginDAO { private JdbcTemplate jdbcTemplate; private SimpleJdbcInsert insertPerson; public void setDataSource(DataSource dataSource) { jdbcTemplate = new JdbcTemplate(dataSource); insertPerson = new SimpleJdbcInsert(dataSource).withTableName("PERSON") .usingGeneratedKeyColumns("PERSON_ID"); } @Override public void addPerson(Person person) { SqlParameterSource parameters = new BeanPropertySqlParameterSource( person); Number newId = insertPerson.executeAndReturnKey(parameters); String sql = "INSERT INTO PERSON_ROLE (PERSON_ID, ROLE) VALUES (?, ?)"; jdbcTemplate.update(sql, newId.longValue(), person.getPersonRole().getRole()); } }
public InsertBatchOperate(boolean autoGeneratedKeys, Insert insert, TableMetaData metaData, SimpleJdbcInsert simpleJdbcInsert, SimpleDslSession simpleDslSession) { super(); this.insertContext = insert.getContext(); this.simpleJdbcInsert = simpleJdbcInsert; this.simpleDslSession = simpleDslSession; InsertContext insertContext = insert.getContext(); simpleJdbcInsert.withSchemaName(insertContext.getSchema()) .withTableName(insertContext.getTableName()); if (autoGeneratedKeys) { simpleJdbcInsert.usingColumns(insertContext.getColumnNameArray()) .usingGeneratedKeyColumns(metaData.getKeyNames()); } else { String[] keyNames = metaData.getKeyNames(); Set<String> columns = new HashSet<String>(); List<String> allColumns = insertContext.getColumnNames(); for (String columnName : allColumns) { columns.add(columnName.toUpperCase()); } for (String key : keyNames) { if (!columns.contains(key.toUpperCase())) { generateKeys.add(key); } } allColumns.addAll(generateKeys);// 主键值通过应用程序自动生成 simpleJdbcInsert.usingColumns(allColumns.toArray(new String[0])); } }
@Transactional public class Test { @Autowired DataSource ds; public void test1() throws Exception { Map<String, Object> params = new HashMap<String, Object>(); params.put("c1", "test"); SimpleJdbcInsert insert = new SimpleJdbcInsert(ds).withTableName("t1").usingColumns("c1") .usingGeneratedKeyColumns("id"); long id = insert.executeAndReturnKey(params).longValue(); params = new HashMap<String, Object>(); params.put("stuff", "stuff"); params.put("id_fk", id); SimpleJdbcInsert insert2 = new SimpleJdbcInsert(ds).withTableName( "table2").usingColumns("stuff", "id_fk"); insert2.execute(params); NamedParameterJdbcTemplate tmpl = new NamedParameterJdbcTemplate(ds); params = new HashMap<String, Object>(); params.put("id", id); String c1 = tmpl.queryForObject("select c1 from t1 where id = :id", params, String.class); }
Map<String, Object> map = new HashMap<String, Object>(); map.put("column1", "test"); map.put("column2", Boolean.TRUE); SimpleJdbcInsert insert = new SimpleJdbcInsert(template).withTableName("table").usingGeneratedKeyColumns("id"); int id = insert.executeAndReturnKey(map).intValue();
public ToDoItemDaoImpl(DataSource dataSource) { this.dataSource = dataSource; insert = new SimpleJdbcInsert(dataSource).withTableName("toDoItem").usingGeneratedKeyColumns("id"); }
public TopicMap saveOrUpdateTopicMap(final TopicMap topicMap) { Map<String, Object> params = new HashMap<>(); params.put("Name", topicMap.getName()); params.put("Url", topicMap.getUrl()); params.put("IsEditable", topicMap.isEditable() ? 1 : 0); params.put("WSOperation", topicMap.getWSOperation()); params.put("WSSoapAction", topicMap.getWSSoapAction()); params.put("WSEndPoint", topicMap.getWSEndPoint()); if(topicMap.isNew()){ SimpleJdbcInsert insert = new SimpleJdbcInsert(getJdbcTemplate()); insert.setTableName("tmmaps"); insert.setGeneratedKeyName("ID"); KeyHolder keyHolder = insert.executeAndReturnKeyHolder(params); Number number = keyHolder.getKey(); topicMap.setId(number.intValue()); } else{ params.put("id", topicMap.getId()); String sql = "UPDATE tmmaps SET Name=:Name, Url=:Url, IsEditable=:IsEditable, WSOperation=:WSOperation, WSSoapAction=:WSSoapAction, WSEndPoint=:WSEndPoint WHERE id=:id"; getNamedParameterJdbcTemplate().update(sql, params); } return topicMap; }
SimpleJdbcInsert jdbcInsert = new SimpleJdbcInsert(getJdbcTemplate()); jdbcInsert.withTableName(entityName); //e.g. "STUDENTS" jdbcInsert.setGeneratedKeyName(idColumn); //e.g. "ID" jdbcInsert.setColumnNames(columnNames); //e.g. Arrays.asList("FIRSTNAME", "SURNAME", "GIVEN_NAME", "DOB")
@Override public void write(List<? extends Game> games) { for (Game game : games) { SqlParameterSource values = new MapSqlParameterSource().addValue("player_id", game.getId()).addValue( "year_no", game.getYear()).addValue("team", game.getTeam()).addValue("week", game.getWeek()) .addValue("opponent", game.getOpponent()).addValue("completes", game.getCompletes()).addValue( "attempts", game.getAttempts()).addValue("passing_yards", game.getPassingYards()).addValue( "passing_td", game.getPassingTd()).addValue("interceptions", game.getInterceptions()) .addValue("rushes", game.getRushes()).addValue("rush_yards", game.getRushYards()).addValue( "receptions", game.getReceptions()).addValue("receptions_yards", game.getReceptionYards()) .addValue("total_td", game.getTotalTd()); this.insertGame.execute(values); } }
public ConferencenJdbcInsert(DataSource dataSource, Conference conference) { super(dataSource); this.conference = conference; this.withTableName("conference") .usingColumns("name", "slug", "description", "started_date", "ended_date") .usingGeneratedKeyColumns("id"); compile(); }
userProfileHandler.validateChannelAccess(uid, channel); SimpleJdbcInsert jdbcInsert = new SimpleJdbcInsert(getJdbcTemplate()); jdbcInsert.withTableName("channel").usingGeneratedKeyColumns("id"); Map<String, Object> parameters = new HashMap<>(); parameters.put("name", channel.getName()); parameters.put("ugo_uid", uid); parameters.put("ugo_permissions", DEFAULT_PERMISSIONS); Number key = jdbcInsert.executeAndReturnKey(new MapSqlParameterSource(parameters)); int id = key.intValue(); commitTransaction();
protected BaseSpringJdbcRepository(JdbcTemplate jdbcTemplate, SqlGenerator sqlGenerator) { this.sqlGenerator = sqlGenerator; this.jdbcTemplate = new NamedParameterJdbcTemplate(jdbcTemplate); this.jdbcInsert = new SimpleJdbcInsert(jdbcTemplate) .withTableName(entityMeta.getTable()) .usingGeneratedKeyColumns(entityMeta.getIdColumnName()); this.rowMapper = createRowMapper(entityMeta.getClassType()); }
public JdbcPaymentInfoDao(DataSource dataSource) { insert = new SimpleJdbcInsert(dataSource) .withTableName("PAYMENT_INFO") .usingGeneratedKeyColumns("PAYMENT_INFO_ID") .usingColumns("PRICE"); }