Employee实体类
import com.charles.sbjdbc.pojo.Department;
import lombok.AllArgsConstructor;
import lombok.Data;
import lombok.NoArgsConstructor;
import java.util.Date;
@Data
@AllArgsConstructor
@NoArgsConstructor
public class Employee {
private Integer id;
private String lastName;
private String email;
//1 male, 0 female
private Integer gender;
private Integer department;
private Date birth;
private Department eDepartment; // 冗余设计
}
EmployeeMapper.xml里面关于部门表的映射实例
<!DOCTYPE mapper
PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
"http://mybatis.org/dtd/mybatis-3-mapper.dtd">
<mapper namespace="com.charles.sbjdbc.Mapper.EmployeeMapper">
<resultMap id="EmployeeMap" type="Employee">
<id property="id" column="eid"/>
<id property="lastName" column="lastName"/>
<id property="email" column="email"/>
<id property="gender" column="gender"/>
<id property="birth" column="date"/>
<id property="department" column="did"/>
<association property="eDepartment" javaType="Department">
<!--did-->
<id property="id" column="did"/>
<result property="departmentName" column="departmentName"/>
</association>
</resultMap>
<select id="getEmployees" resultMap="EmployeeMap">
select e.eid as eid,lastName,email,gender,date,d.id as did,d.departmentName as departmentName
from department d,employee e
where d.id = e.did
</select>
<select id="save" parameterType="Employee">
insert into mybatis.employee (lastName,email,gender,did,date)
values (#{lastName},#{email},#{gender},#{did},#{date});
</select>
<select id="get" resultType="Employee">
select * from mybatis.employee where id = #{id}
</select>
<delete id="delete" parameterType="int">
delete from mybatis.employee where id = #{id}
</delete>
</mapper>