在mapper映射文件中
resultType:是自动封装
使用:当数据库的列名与实体类的属性一一对应时可以使用自动封装
resultMap:是手动封装
使用:手动封装是关联查询时,实体类的属性不满足时,也不想创建多余的属性时采用
1、在实体类创建其他对象的属性(以对象为类型)
2、在mapper文件中编写resultMap标签
<resultMap id="grade_gl_studentInfo" type="Grade"> <id property="gradeId" column="gradeId"></id> <result property="gradeName" column="gradeName"></result> <collection property="stuList" ofType="StuTest"> <id property="stuId" column="StuId"></id> <result property="stuName" column="stuName"></result> </collection> </resultMap>
resultMap标签中属性
id属性:见名知意就好
type:是当前关联的实体类(在那个实体类关联的mapper文件写那个实体类)
下级标签:
id标签:是区别主键的,写数据库主键那一列
property属性:是实体类的属性名
column属性:sql语句的列名
result标签:除了主键,其他的列都使用这个标签
<collection property="stuList" ofType="StuTest">
<association property="grade" javaType="Grade">
如果关联的是多的一方,采用collection标签
property:关联对象的属性名(在实体类的属性名)
ofType:关联对象的完全限定名
如果关联的是一的一方,采用association标签
property:关联对象的属性名(在实体类的属性名)
javaType:关联对象的完全限定名