Java JDBC 存储过程转入List<T>
Java JDBC stored procedure into List<T>
我正在尝试编写一种方法,该方法利用我公司某人制作的界面。接口方法设置为return一个类型:
<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);
所以我的问题是,如何以正确的格式 return 这个 "result"?
如果你想 return 值存在于结果映射中,你可以这样做:
List<Value> list = new ArrayList<Value>(map.values());
如果你想return键:
List<String> list = new ArrayList<String>(m.keySet());
我正在尝试编写一种方法,该方法利用我公司某人制作的界面。接口方法设置为return一个类型:
<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);
所以我的问题是,如何以正确的格式 return 这个 "result"?
如果你想 return 值存在于结果映射中,你可以这样做:
List<Value> list = new ArrayList<Value>(map.values());
如果你想return键:
List<String> list = new ArrayList<String>(m.keySet());