resultType: 执行 sql 得到 ResultSet结果集 ,把结果集转换为想要设置的指定类型时使用。使用类型的完全限定名或别名,注意如果返回的是集合,那应该设置为集合包含的类型,而不是集合本身。

它的值可以是:类的全限定名称
如:

1
2
3
4
5
<!-- 系统类 -->
resultType="java.lang.Integer"

<!-- 自定义类 -->
resultType="com.apps.bean.Student"

也可以是别名

1
2
<!-- 系统类 -->
resultType="integer"

注意我这里没有写自定义类的别名,对于自定义类我们要自定义别名:
在我们mybatis-config.xml的主xml文件中写,注意不是 mapper 文件中

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
<?xml version="1.0" encoding="UTF-8" ?>
<!DOCTYPE configuration
PUBLIC "-//mybatis.org//DTD Config 3.0//EN"
"http://mybatis.org/dtd/mybatis-3-config.dtd">
<configuration>

<settings>
<!-- 设置mybatis输出日志文件 -->
<setting name="logImpl" value="STDOUT_LOGGING"/>
</settings>

<!-- 定义别名 -->
<typeAliases>
<!--
第一种方式
可以指定一个类型一个自定义别名
type:自定义类型的全限定名称
alias:别名(简短,容易记忆)
-->
<!--<typeAlias type="com.apps.bean.Student" alias="stu" />-->

<!--
第二种方式
<package> name是包名,这个包中的所有类,类名就是别名(类名不区分大小定)
-->
<package name="com.apps.bean"/>
</typeAliases>

<environments default="mysql">
<environment id="mysql">
<transactionManager type="JDBC"/>
<dataSource type="POOLED">
<!-- 数据库的驱动类名 -->
<property name="driver" value="com.mysql.jdbc.Driver"/>
<!-- 连接数据库的url字符串 -->
<property name="url" value="jdbc:mysql://localhost:3306/db_mybatis"/>
<!-- 用户名 -->
<property name="username" value="root"/>
<!-- 密码 -->
<property name="password" value="root"/>
</dataSource>
</environment>
</environments>
<mappers>
<mapper resource="com/apps/dao/StudentDao.xml"/>
</mappers>
</configuration>

这时我们就可以在mapper 文件中写自定义别名了

1
2
3
<!-- 自定义类 -->
resultType="Student"
<!-- 我在com.apps.bean包下定义了Student类,通过使用第二种包名加载,类名就是别名,所以直接使用类名 -->