![](/img/trans.png)
[英]How to call a DB2 stored procedure passing a List<String> as param?
[英]Facing problem in passing param in DB2 query
查詢來自數據庫的 select 新病例報告,其中輸入參數為 Id、fromdate 和 todate。
我已經編寫了一個 mapsqlparametersource class ,它不起作用,因此作為替代方法,我如何在不更改查詢的情況下直接在 queryforlist 中傳遞這些參數。
MapSqlParameterSource source = new MapSqlParameterSource(); source.addValue(Constants.FROMDATE.getValue(), CommonUtils.formatDateddmmyyyy("01-01-2020", "yyyy-MM-dd"),Types.CHAR); source.addValue(Constants.TODATE.getValue(), CommonUtils.formatDateddmmyyyy("12-12-2021", "yyyy-MM-dd"),Types.CHAR); source.addValue("issuerid", "50191150159",Types.CHAR);
什么可能是傳遞值的替代方式。
您可以創建一個Map<String, T>
並首先向其中添加參數,然后將 Map 傳遞給構造函數。
Map<String, (whatever the value type would be)> parameters = new HashMap<>();
parameters.add(Constants.FROMDATE.getValue(), CommonUtils.formatDateddmmyyyy("01-01-2020", "yyyy-MM-dd"));
parameters.add(Constants.TODATE.getValue(), CommonUtils.formatDateddmmyyyy("12-12-2021", "yyyy-MM-dd"),Types.CHAR);
parameters.add("issuerid", "50191150159",Types.CHAR);
MapSqlParameterSource source = new MapSqlParameterSource(parameters);
我認為這不會改變 object 的內容,但我會確保您的Constants.getValue()
輸出與數據庫端匹配,並且您輸入的日期格式正確(我注意到您有日期輸入為 dd-mm-yyyy,但后面有 yyyy-MM-dd,以防萬一您沒有注意到)
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.