【问题标题】:Java JDBC stored procedure into List<T>Java JDBC 存储过程到 List<T>
【发布时间】:2016-09-20 09:01:11
【问题描述】:

我正在尝试编写一种方法,该方法利用我公司中某人制作的界面。接口方法设置为返回类型:

<T> List<T>

并接受其他类型的参数:

RowMapper<T> rowMapper

我想使用带有一些参数的存储过程,到目前为止我有以下内容:

SimpleJdbcCall getYearWeekOptions = new SimpleJdbcCall(getDataSource())                          .withoutProcedureColumnMetaDataAccess().withProcedureName(procedureName)
.declareParameters(new SqlOutParameter(PARAMETER_COMPANY_ID, Types.VARCHAR))
.declareParameters(new SqlOutParameter(PARAMETER_MIN_YEAR, Types.NUMERIC))
.declareParameters(new SqlOutParameter(PARAMETER_MIN_WEEK, Types.NUMERIC));

getYearWeekOptions.returningResultSet("yearWeekOptions", rowMapper);
Map<String, Object> result = getYearWeekOptions.execute(companyId, yearStart, weekStart);

所以我的问题是,我如何以正确的格式返回这个“结果”?

【问题讨论】:

    标签: java sql jdbc spring-jdbc


    【解决方案1】:

    如果您想返回结果映射中存在的值,您可以执行以下操作:

    List<Value> list = new ArrayList<Value>(map.values());
    

    如果你想归还钥匙:

    List<String> list = new ArrayList<String>(m.keySet());
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2018-10-03
      • 2013-05-28
      • 2010-10-22
      • 2015-05-28
      • 2011-08-03
      • 2021-07-12
      相关资源
      最近更新 更多