Spring MVC 使用带有显式Types值的setObject()指定要使用的类型

t40tm48m  于 2022-12-29  发布在  Spring
关注(0)|答案(1)|浏览(218)

JDBCTemplate中出现错误。无法推断用于com.xurpas.util.hitsRowMapper示例的SQL类型。使用带有显式类型值的setObject()指定要使用的类型。inc_var.getType=“从表中按类型分组选择类型”

public List<Map<String, Object>> getType(String table){
            JdbcTemplate getJdbcTemplate = new JdbcTemplate(dataSource);
            inc_var.getType = inc_var.getType.replace("$table", table);
            logger.LogFile("EDIT: " + inc_var.getType);
            return getJdbcTemplate.queryForList(inc_var.getType, new hitsRowMapper());      
        }

public class hitsRowMapper implements RowMapper<Object> {

    //@Override
    public Object mapRow(ResultSet rs, int rowNum) throws SQLException {
        hitsRowExtractor ext = new hitsRowExtractor();
        return ext.extractData(rs);
    }

public class hitsRowExtractor implements ResultSetExtractor {
     @Override
      public Object extractData(ResultSet rs) throws SQLException {
         logger.initializeLogger();
        hitsModel hits = new hitsModel();
        hits.setType(rs.getString(1));
        logger.LogFile(rs.getString(1));
        return hits;
      }
}
klr1opcd

klr1opcd1#

我在使用JdbcTemplate时也遇到了同样的问题,使用org.springframework.jdbc.core.namedparam.NamedParameterJdbcTemplate就可以了。

相关问题