select元素:
Select元素用来定义查询操作,常用属性如下。
id:唯一标识符。用来引用这条语句,需要和接口的方法名一致。
parameterType:将会传入这条语句的参数类的完全限定名或别名。这个属性是可选的,因为 MyBatis 可以通过 TypeHandler 推断出具体传入语句的参数,默认值为 unset。
resultType:返回值类型。别名或者全类名。
如果返回的是集合,定义集合中元素的类型。
如果是一条数据封装到Map中返回,则写map。
如果是多条记录封装在一个map:Map<Integer, Employee>:键是这条记录的主键,值是封装后的javaBean,可以在方法前加注解@MapKey("id")告诉mybatis封装这个map的时候使用哪个属性作为map的key。
public interface EmployeeMapper {
@MapKey("id")
public Map<Integer, Employee> getEmpByLastNameLikeReturnMap(String lastName);
}
不能和resultMap属性同时使用。
resultMap:外部resultMap的命名引用,和resultType不能同时使用。
timeout:这个设置是在抛出异常之前,驱动程序等待数据库返回请求结果的秒数。默认值为unset(依赖驱动)。
fetchSize:影响驱动程序每次批量返回的结果行数。默认值为unset(依赖驱动)。
databaseId:如果配置了 databaseIdProvider,MyBatis 会加载所有的不带 databaseId 或匹配当前 databaseId 的语句;如果带或者不带的语句都有,则不带的会被忽略。
以上是一些常用的属性,更多属性请阅读官方文档。