在DAO层中,主要是和数据库打交道,负责一些数据的访问。而现在我要根据批量id查询大量用户的信息,按照常规操作来:
@Repository
public class UserDao extends BaseDAO {
//定义新的RowMapper来获取参数
public class UserMapper implements RowMapper<User> {
@Override
public User mapRow(ResultSet resultSet,int index) throws SQLException{
User user = new User();
user.setId(resultSet.getInt("id"));
user.setUsername(resultSet.getString("username"));
user.setPassword(resultSet.getString("password"));
return user;
}
}
//根据批量的id得到大量用户的写法,利用集合
public Collection<User> findUsersByIDs(Collection<Integer> ids){
StringBuilder sql = new StringBuilder("select * from user where id in (");
ids.forEach((id)->sql.append("?,"));
sql.deleteChar