你定义了users,但没有把 user 放进去,而且 return user 这一行你没报错吗?public List getUserList() { String sql = "select id,user_name,user_pwd from user"; List<CasUser> users = jdbcTemplate.query(sql, new RowMapper(){ public Object mapRow(ResultSet rs, int rowNum) throws SQLException {CasUser user = new CasUser(); user.setId(rs.getInt("id")); user.setUserName(rs.getString("user_name")); user.setUserPwd(rs.getString("user_pwd")); users.add(user); } }); System.out.println(users.size());//结果为0return users; }
它使用的是spring的mvc
所以那个jdbcTemplate 的值是这样得到的 private DataSource dataSource;
private JdbcTemplate jdbcTemplate = null; public final void setDataSource(DataSource dataSource) {
if (this.jdbcTemplate == null
|| dataSource != this.jdbcTemplate.getDataSource()) {
this.jdbcTemplate = new JdbcTemplate(dataSource); }
}
String sql = "select id,user_name,user_pwd from user";
List<CasUser> users = jdbcTemplate.query(sql, new RowMapper(){
public Object mapRow(ResultSet rs, int rowNum) throws SQLException {CasUser user = new CasUser();
user.setId(rs.getInt("id"));
user.setUserName(rs.getString("user_name"));
user.setUserPwd(rs.getString("user_pwd"));
users.add(user);
}
});
System.out.println(users.size());//结果为0return users;
}
那是一个内部方法
我把user返回给了users对象
我这里面没有用到hibernate 所以我不知道怎样用query得到list
你并没有把你需要的值放进这个users中啊
那是一个内部方法
我把user返回给了users对象
谢谢各位!
已经出来了
应该是oracle数据库的commit的问题