查询返回单个结果(一个值或一个类),以下例子是返回password,返回一个类与该方法类似,使用内部匿名类方式
public boolean checkUser(User user)
{
String name = user.getUsername();
String pass = user.getPassword();
String sql="SELECT PASSWORD FROM USERS WHERE username='"+name+"'";
Object obj=jdbcTemplate.queryForObject(sql, new RowMapper(){
public Object mapRow(java.sql.ResultSet res, int index)
throws SQLException {
// TODO Auto-generated method stub
String password=res.getString("password");
//System.out.println(password);
return password;
}
});
if(pass.equals(obj))
return true;
return false;
}
使用RowMapper查询多笔数据,使用继承接口方式
class UserRowMapper implements RowMapper {
public Object mapRow(ResultSet rs,int index) throws SQLException
{
User u = new User();
u.setId(rs.getString(”ID”));
u.setName(rs.getString(”Name”));
u.setPassword(rs.getString(”Password”));
return u;
}
}
public List select(String where)
{
List list;
String sql = "select * from admin "+where;
list = jdbcTemplate.query(sql,new RowMapperResultReader(new UserRowMapper()));
return list;
}