繁体   English   中英

来自simpleJdbcTemplate的方法query()不返回值

[英]method query() from simpleJdbcTemplate is not returning values

我的班级是这样的:

public class DBConection extends SimpleJdbcDaoSupport implements ElectionsDao{
public List<String> getDates(){
        try{
            String sql = "SELECT electiondate FROM electiondate";
            List<String> dates = new ArrayList<String>();
            dates = getSimpleJdbcTemplate().query(sql,  
                    ParameterizedBeanPropertyRowMapper.newInstance(String.class));

            System.out.println(dates.size());
            System.out.println(dates.get(0));

            return dates;
        }catch(DataAccessException ex){
            throw new RuntimeException(ex);
        }
    }
}

我试图从SQL语句中获取值,然后将它们作为String对象添加到列表中,但是当我运行我的项目时,它返回值的数量,但全部为空。 有人知道为什么吗? 我有我的配置文件和所有内容。 我认为定义query()一定是一个问题。 我正在使用Spring框架。

我已经弄清楚怎么做。

这是我的操作方式:

public class DBConection extends SimpleJdbcDaoSupport implements ElectionsDao{
    public List<String> getDates(){
        List<String> dates = new ArrayList<String>();
        try {
            dates = getSimpleJdbcTemplate().query("SELECT electiondate FROM electiondate";, new StringRowMapper());
        } catch (DataAccessException ex){
        throw new RuntimeException(ex);
        }
        return dates;
    }

    protected static final class StringRowMapper implements ParameterizedRowMapper<String> {
        public String mapRow(ResultSet rs, int line) throws SQLException {
            String string = new String(rs.getString("electiondate"));
            return string;
        }
    }
}

我必须要做一个“ StringRowMapper”内部类才能工作。

希望对您有帮助!

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM