0
NameParameterJdbcTemplate을 사용하여 쿼리의 페이지를 매기는 방법은 무엇입니까?NameParameterJdbctemplate을 사용하여 쿼리의 페이지 매기기
..이 내 쿼리를 나는 필수 JdbcTemplate을 함께하려고했지만, 난 몇 가지 실수를 :
sql.append("SELECT VGPT_EXE.* FROM ")
.append(Constants.T_VW_GPT_E_BASIC)
.append(" AS VGPT_EXE ")
.append("WHERE VGPT_EXE.")
.append(Constants.ID_SUBJECTE
+ " in (:listOfValues)");
PreparedStatementCreatorFactory pscf;
MapSqlParameterSource parameterss = new MapSqlParameterSource();
parameterss.addValue("listOfValues", ids);
pscf = new PreparedStatementCreatorFactory(sql.toString());
pscf.setResultSetType(ResultSet.TYPE_SCROLL_INSENSITIVE);
그래서 나는 namedParameter 쿼리 I 수 없습니다 세터 목록 값 믿는 문제? 또는 나는 sth 잘못하고있다.
resultat.setResultats((List<IDeute>) template.getJdbcOperations()
.query((PreparedStatementCreator) pscf.newPreparedStatementSetter(new ArrayList<Long>(parameterss.getValues().values())),
new ResultSetPaginatExtractor(new MapperDeute(),
resultat.getFiles(),
resultat.getInici())));
ResultSetPaginatExtractor 내가 파일 수 및 fisrt 행을 설정할 수 ResultSetExtractor의 구현이다.
스택 트레이스 :
nested exception is org.springframework.dao.DataRetrievalFailureException: S'ha produit un error en la recuperació del deute associat a la clau de subjecte 3375876; nested exception is org.springframework.dao.InvalidDataAccessApiUsageException: SQL [SELECT VGPT_EXE.* FROM vw_gpt_e_basic AS VGPT_EXE WHERE VGPT_EXE.id_subjecte in (:listOfValues) ORDER BY VGPT_EXE.cc_cod_prov, VGPT_EXE.cc_cod_emisor, VGPT_EXE.cc_cod_concepte, VGPT_EXE.cc_any, VGPT_EXE.cc_periode, VGPT_EXE.cc_num_rebut]: given 1 parameters but expected 0