- 使用mybatis逆向生成了一些查询sql的xml文件和java 文件后,对其进行修改,也就是加上一些功能
- 加入的功能是在查询员工的时候顺便把部门信息也查出来,共需要以下的步骤
- 新建resultmap ===============>这里需要注意的是assocication的使用,它是将一个java类当作另外一个类的成员属性的时候使用的。具体的用法是 javaType指定这个成员属性是哪个java类, property是成员属性的名字
<resultMap id="BaseResultMapWithDept" type="ssm.bean.TblEmp"> <id column="emp_id" jdbcType="INTEGER" property="empId" /> <result column="emp_name" jdbcType="VARCHAR" property="empName" /> <result column="gender" jdbcType="VARCHAR" property="gender" /> <result column="email" jdbcType="VARCHAR" property="email" /> <result column="d_id" jdbcType="INTEGER" property="dId" /> <!--使用assocication来定义, 当类作为成员属性--> <association javaType="ssm.bean.TblDept" property="tblDept"> <id column="dept_id" javaType="INTEGER" property="deptId"/> <result column="dept_name" jdbcType="VARCHAR" property="deptName"/> </association> </resultMap>
-
使用sql标签来指定查询结果每一列的名字
<sql id="Base_Column_List_WIth_dept"> emp_id, emp_name, gender, email, d_id, dept_id, dept_name </sql>
-
编写sql 语句,由于是在查询员工的时候把部门信息也查出来,所以要用到联合查询(左连接)
<!--这是自己添加的,查询的时候连个部门表一起查--> <select id="selectByExampleWithDept" parameterType="ssm.bean.TblEmpExample" resultMap="BaseResultMapWithDept"> select <if test="distinct"> distinct </if> <include refid="Base_Column_List_WIth_dept" /> FROM tbl_emp e LEFT JOIN tbl_dept d ON e.d_id = d.dept_id <if test="_parameter != null"> <include refid="Example_Where_Clause" /> </if> <if test="orderByClause != null"> order by ${orderByClause} </if> </select>
- 新建resultmap ===============>这里需要注意的是assocication的使用,它是将一个java类当作另外一个类的成员属性的时候使用的。具体的用法是 javaType指定这个成员属性是哪个java类, property是成员属性的名字
ssm 开发经验 2019/5/12 mybatis 增加select 语句
最新推荐文章于 2023-03-22 10:10:07 发布