当前页面: 开发资料首页 → J2EE 专题 → 一直无法理解这段代码(获取数据集),请帮忙
一直无法理解这段代码(获取数据集),请帮忙
摘要: 一直无法理解这段代码(获取数据集),请帮忙
public User getUserByAccount(String account) throws UserNotFoundException
{
User result = null; //User是一个用户对像类
try
{
result = (User) getJdbcTemplate().query(sqlstr, //sqlstr为杳询语句
new Object[] { account }, new ResultSetExtractor()
{
public Object extractData(ResultSet rs)
throws SQLException
{
User user = null;
while (rs.next())
{
user = new User();
user.setId(rs.getString("user_id"));
user.setOrgId(rs.getString("org_id"));
user.setLoginname(rs.getString("loginname"));
user.setPassword(rs.getString("password"));
user.setUsername(rs.getString("username"));
user.setIsActive(rs.getString("is_active"));
user.setOrg(getUserOrg(rs.getString("org_id")));
}
return user;
}
});
}
catch (DataAccessException e)
{
e.printStackTrace();
}
if (result == null)
throw new UserNotFoundException();
return result;
}
我不知道这是如何返回用户记录的?
HINBERNATE的东西
sqlstr, //sqlstr为杳询语句
new Object[] { account }, new ResultSetExtractor()
account 为参数
new ResultSetExtrator为一个默认的匿名类
getJdbcTemplate()会把查询到的结果(ResultSet)传入这个类的
public Object extractData(ResultSet rs)
throws SQLException
其他的应该都清楚了