org.skife.jdbi.v2.Query.list()方法的使用及代码示例

x33g5p2x  于2022-01-28 转载在 其他  
字(7.5k)|赞(0)|评价(0)|浏览(193)

本文整理了Java中org.skife.jdbi.v2.Query.list方法的一些代码示例,展示了Query.list的具体用法。这些代码示例主要来源于Github/Stackoverflow/Maven等平台,是从一些精选项目中提取出来的代码,具有较强的参考意义,能在一定程度帮忙到你。Query.list方法的具体详情如下:
包路径:org.skife.jdbi.v2.Query
类名称:Query
方法名:list

Query.list介绍

[英]Executes the select

Will eagerly load all results
[中]执行选择
将急切地加载所有结果

代码示例

代码示例来源:origin: apache/incubator-druid

  1. @Override
  2. public boolean tableExists(final Handle handle, final String tableName)
  3. {
  4. return !handle.createQuery("SELECT * FROM INFORMATION_SCHEMA.TABLES WHERE TABLE_NAME = :tableName")
  5. .bind("tableName", tableName)
  6. .map(StringMapper.FIRST)
  7. .list()
  8. .isEmpty();
  9. }

代码示例来源:origin: apache/incubator-druid

  1. @Override
  2. public boolean tableExists(final Handle handle, final String tableName)
  3. {
  4. return !handle.createQuery(
  5. "SELECT tablename FROM pg_catalog.pg_tables WHERE schemaname = 'public' AND tablename ILIKE :tableName"
  6. )
  7. .bind("tableName", tableName)
  8. .map(StringMapper.FIRST)
  9. .list()
  10. .isEmpty();
  11. }

代码示例来源:origin: apache/incubator-druid

  1. @Override
  2. public List<Pair<String, String>> withHandle(Handle handle)
  3. {
  4. return handle
  5. .createQuery(
  6. buildLookupQuery(table, filter, keyColumn, valueColumn)
  7. ).map(
  8. new ResultSetMapper<Pair<String, String>>()
  9. {
  10. @Override
  11. public Pair<String, String> map(
  12. final int index,
  13. final ResultSet r,
  14. final StatementContext ctx
  15. ) throws SQLException
  16. {
  17. return new Pair<>(r.getString(keyColumn), r.getString(valueColumn));
  18. }
  19. }
  20. ).list();
  21. }
  22. }

代码示例来源:origin: apache/incubator-druid

  1. @Override
  2. public List<String> inTransaction(Handle handle, TransactionStatus status)
  3. {
  4. return handle.createQuery(reverseFetchQuery)
  5. .bind("val", value)
  6. .map(StringMapper.FIRST)
  7. .list();
  8. }
  9. });

代码示例来源:origin: apache/incubator-druid

  1. @Override
  2. public List<String> inTransaction(Handle handle, TransactionStatus status)
  3. {
  4. return handle.createQuery(fetchQuery)
  5. .bind("val", key)
  6. .map(StringMapper.FIRST)
  7. .list();
  8. }
  9. }

代码示例来源:origin: apache/incubator-druid

  1. @Override
  2. public List<TaskInfo<EntryType, StatusType>> getActiveTaskInfo(@Nullable String dataSource)
  3. {
  4. return getConnector().retryWithHandle(
  5. handle -> {
  6. final Query<Map<String, Object>> query = createActiveTaskInfoQuery(
  7. handle,
  8. dataSource
  9. );
  10. return query.map(taskInfoMapper).list();
  11. }
  12. );
  13. }

代码示例来源:origin: apache/incubator-druid

  1. @Override
  2. public List<TaskInfo<EntryType, StatusType>> getCompletedTaskInfo(
  3. DateTime timestamp,
  4. @Nullable Integer maxNumStatuses,
  5. @Nullable String dataSource
  6. )
  7. {
  8. return getConnector().retryWithHandle(
  9. handle -> {
  10. final Query<Map<String, Object>> query = createCompletedTaskInfoQuery(
  11. handle,
  12. timestamp,
  13. maxNumStatuses,
  14. dataSource
  15. );
  16. return query.map(taskInfoMapper).list();
  17. }
  18. );
  19. }

代码示例来源:origin: apache/incubator-druid

  1. public byte[] lookupWithHandle(
  2. final Handle handle,
  3. final String tableName,
  4. final String keyColumn,
  5. final String valueColumn,
  6. final String key
  7. )
  8. {
  9. final String selectStatement = StringUtils.format(
  10. "SELECT %s FROM %s WHERE %s = :key", valueColumn,
  11. tableName, keyColumn
  12. );
  13. List<byte[]> matched = handle.createQuery(selectStatement)
  14. .bind("key", key)
  15. .map(ByteArrayMapper.FIRST)
  16. .list();
  17. if (matched.isEmpty()) {
  18. return null;
  19. }
  20. if (matched.size() > 1) {
  21. throw new ISE("Error! More than one matching entry[%d] found for [%s]?!", matched.size(), key);
  22. }
  23. return matched.get(0);
  24. }

代码示例来源:origin: apache/incubator-druid

  1. @Override
  2. public Iterable<Map.Entry<String, String>> fetchAll()
  3. {
  4. return inReadOnlyTransaction((handle, status) -> {
  5. return handle.createQuery(fetchAllQuery)
  6. .setFetchSize(streamingFetchSize)
  7. .map(new KeyValueResultSetMapper(keyColumn, valueColumn))
  8. .list();
  9. });
  10. }

代码示例来源:origin: apache/incubator-druid

  1. @Override
  2. public List<String> withHandle(Handle handle)
  3. {
  4. return handle.createQuery("SELECT id FROM " + table + " WHERE used = true ORDER BY id")
  5. .map(StringMapper.FIRST)
  6. .list();
  7. }
  8. }

代码示例来源:origin: apache/incubator-druid

  1. private boolean segmentExists(final Handle handle, final DataSegment segment)
  2. {
  3. return !handle
  4. .createQuery(StringUtils.format("SELECT id FROM %s WHERE id = :identifier", dbTables.getSegmentsTable()))
  5. .bind("identifier", segment.getId().toString())
  6. .map(StringMapper.FIRST)
  7. .list()
  8. .isEmpty();
  9. }

代码示例来源:origin: apache/incubator-druid

  1. @Override
  2. public boolean tableExists(Handle handle, String tableName)
  3. {
  4. String databaseCharset = handle
  5. .createQuery("SELECT @@character_set_database")
  6. .map(StringMapper.FIRST)
  7. .first();
  8. if (!databaseCharset.startsWith("utf8")) {
  9. throw new ISE(
  10. "Druid requires its MySQL database to be created with an UTF8 charset, found `%1$s`. "
  11. + "The recommended charset is `utf8mb4`.",
  12. databaseCharset
  13. );
  14. } else if (!"utf8mb4".equals(databaseCharset)) {
  15. log.warn("The current database charset `%1$s` does not match the recommended charset `utf8mb4`", databaseCharset);
  16. }
  17. return !handle.createQuery("SHOW tables LIKE :tableName")
  18. .bind("tableName", tableName)
  19. .list()
  20. .isEmpty();
  21. }

代码示例来源:origin: apache/incubator-druid

  1. @Override
  2. public List<AuditEntry> withHandle(Handle handle)
  3. {
  4. Query<Map<String, Object>> query = handle.createQuery(theQueryString);
  5. if (key != null) {
  6. query.bind("audit_key", key);
  7. }
  8. return query.bind("type", type)
  9. .setMaxRows(theLimit)
  10. .map(
  11. new ResultSetMapper<AuditEntry>()
  12. {
  13. @Override
  14. public AuditEntry map(int index, ResultSet r, StatementContext ctx)
  15. throws SQLException
  16. {
  17. try {
  18. return jsonMapper.readValue(r.getBytes("payload"), AuditEntry.class);
  19. }
  20. catch (IOException e) {
  21. throw new SQLException(e);
  22. }
  23. }
  24. }
  25. )
  26. .list();
  27. }
  28. }

代码示例来源:origin: apache/incubator-druid

  1. StringUtils.format("SELECT DISTINCT dataSource,commit_metadata_payload FROM %1$s", dbTables.get().getDataSourceTable())
  2. .map(new ResultSetMapper<Pair<String, DerivativeDataSourceMetadata>>()
  3. .list()
  4. );

代码示例来源:origin: apache/incubator-druid

  1. .bind("start_date", theInterval.getStart().toString())
  2. .bind("end_date", theInterval.getEnd().toString())
  3. .map(
  4. new ResultSetMapper<AuditEntry>()
  5. .list();

代码示例来源:origin: apache/hive

  1. private List<DataSegment> getUsedSegmentsList(DerbyConnectorTestUtility connector,
  2. final MetadataStorageTablesConfig metadataStorageTablesConfig) {
  3. return connector.getDBI()
  4. .withHandle(handle -> handle.createQuery(String.format(
  5. "SELECT payload FROM %s WHERE used=true ORDER BY created_date ASC",
  6. metadataStorageTablesConfig.getSegmentsTable()))
  7. .map((i, resultSet, statementContext) -> {
  8. try {
  9. return DruidStorageHandlerUtils.JSON_MAPPER.readValue(resultSet.getBytes("payload"), DataSegment.class);
  10. } catch (IOException e) {
  11. throw Throwables.propagate(e);
  12. }
  13. }).list());
  14. }

代码示例来源:origin: apache/incubator-druid

  1. .bind("start", interval.getStart().toString())
  2. .bind("end", interval.getEnd().toString())
  3. .map(new ResultSetMapper<Pair<DataSegment, String>>()
  4. .list()
  5. );

代码示例来源:origin: apache/incubator-druid

  1. .bind("start_date", theInterval.getStart().toString())
  2. .bind("end_date", theInterval.getEnd().toString())
  3. .map(
  4. new ResultSetMapper<AuditEntry>()
  5. .list();

代码示例来源:origin: apache/incubator-druid

  1. boundQuery = boundQuery.bind(var.lhs, var.rhs);
  2. final List<byte[]> existingBytes = boundQuery.map(ByteArrayMapper.FIRST).list();

代码示例来源:origin: rakam-io/rakam

  1. public Map<String, Object> getAll(Handle handle, @Named("user_id") UIPermissionParameterProvider.Project project) {
  2. return handle.createQuery("SELECT name, value FROM ui_user_defaults WHERE user_id = :user AND project_id = :project")
  3. .bind("project", project.project)
  4. .bind("user", project.userId)
  5. .map((ResultSetMapper<Map.Entry<String, Object>>) (index, r, ctx) ->
  6. new AbstractMap.SimpleImmutableEntry<>(r.getString(1), JsonHelper.read(r.getString(2), Object.class)))
  7. .list().stream().collect(Collectors.toMap(e -> e.getKey(), e -> e.getValue()));
  8. }

相关文章