public <T> T selectOne(String statement) {
return this.selectOne(statement, (Object)null);//调用了下面这个函数
}
public <T> T selectOne(String statement, Object parameter) {
List<T> list = this.selectList(statement, parameter);
if (list.size() == 1) {
return list.get(0);//只能取一条
} else if (list.size() > 1) {//取多了,抛异常
throw new TooManyResultsException("Expected one result (or null) to be returned by selectOne(), but found: " + list.size());
} else {
return null;
}
}
查询有select、selectOne、selectList、selectMap
类型为分别为void、T(泛型)、List、Map。 上面的代码说明了selectOne为什么只返回一个泛型对象。这个泛型对象可以是实体类,也可以是其他数据类型。
return this.selectOne(statement, (Object)null);//调用了下面这个函数
}
public <T> T selectOne(String statement, Object parameter) {
List<T> list = this.selectList(statement, parameter);
if (list.size() == 1) {
return list.get(0);//只能取一条
} else if (list.size() > 1) {//取多了,抛异常
throw new TooManyResultsException("Expected one result (or null) to be returned by selectOne(), but found: " + list.size());
} else {
return null;
}
}
查询有select、selectOne、selectList、selectMap
类型为分别为void、T(泛型)、List、Map。 上面的代码说明了selectOne为什么只返回一个泛型对象。这个泛型对象可以是实体类,也可以是其他数据类型。