如何正确地将List转换为我的Object类型的ArrayList?

时间:2016-02-19 22:24:15

标签: java arraylist casting jdbctemplate

我有一个JdbcTemplate查询,使用queryForList从数据库表中获取所有记录。我有一个主要在ArrayList s上运行的类,并希望将List转换为ArrayList<Customer>。在调试器中,它可以很好地检索记录,但是我无法弄清楚如何将Object转换为Customer并创建ArrayList类型Customer 。这是我的代码:

public static ArrayList<Customer> getCustomers(){
        String query = "SELECT customerId,lastName,firstName,email,address,city,state,zip FROM " +
                "Customers";
        List customerList = jdbcTemplate.queryForList(query);
        ArrayList<Customer> customerArrayList = new ArrayList(customerList);
        return customerArrayList;
    }

1 个答案:

答案 0 :(得分:3)

是否有List裸体而不是List<Customer>?我相信你需要解决的一切。

注意ArrayList支持构造函数

ArrayList(Collection<? extends E> c)

您正在尝试使用它。

来自Spring's JDBC Template documentation看起来你需要提示&#34;提示&#34;返回类型:

<T> List<T> queryForList(String sql, Class<T> elementType) 

即。调用

List<Customer> customerList = jdbcTemplate.queryForList(query, Customer.class);