zoukankan      html  css  js  c++  java
  • mybatis resultMap 映射配置

    现有数据库表:

    CREATE TABLE `dept_p` (
      `DEPT_ID` varchar(40) NOT NULL,
      `DEPT_NAME` varchar(50) DEFAULT NULL,
      `PARENT_ID` varchar(40) DEFAULT NULL COMMENT '自关联,多对一',
      `STATE` int(11) DEFAULT NULL COMMENT '1启用0停用',
      `CREATE_BY` varchar(40) DEFAULT NULL COMMENT '登录人编号',
      `CREATE_DEPT` varchar(40) DEFAULT NULL COMMENT '登录人所属部门编号',
      `CREATE_TIME` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP,
      `UPDATE_BY` varchar(40) DEFAULT NULL,
      `UPDATE_TIME` timestamp NOT NULL DEFAULT '0000-00-00 00:00:00',
      PRIMARY KEY (`DEPT_ID`)
    ) ENGINE=InnoDB DEFAULT CHARSET=utf8

    mybatis的xml文件:

    <!-- 需要显示部门的全部信息,并且需要显示上级部门的ID和上级部门的名称 -->
    <select id="findDeptList" resultMap="deptRM">
    SELECT * FROM 
    (SELECT * FROM dept_p)d
    LEFT JOIN
    (SELECT dept_id AS p_id,dept_name AS p_name FROM dept_p)p
    ON d.parent_id=p.p_id
    ORDER BY dept_id
    </select>
    
    <!--封装结果集 -->
    <resultMap type="Dept" id="deptRM" autoMapping="true">
    <id property="deptId" column="DEPT_ID"/>
    <id property="deptName" column="DEPT_NAME"/>
    <id property="state" column="STATE"/>
    <id property="createTime" column="CREATE_TIME"/>
    <id property="updateTime" column="UPDATE_TIME"/>
    <!--封装上级部门 一对一 -->
    <association property="parentDept" javaType="Dept">
    <id property="deptId" column="P_ID"/>
    <result property="deptName" column="P_NAME"/>
    </association>
    </resultMap>
  • 相关阅读:
    SpringMVC请求静态资源
    Spring视图和视图解析器
    @ModelAttribute运行流程
    SpringMVC模型数据处理
    SpringMVC简单映射请求参数介绍
    队列和栈的问题
    非比较排序——计数排序、基数排序、桶排序
    递归
    对数器的使用
    常见的比较排序
  • 原文地址:https://www.cnblogs.com/Mike_Chang/p/6654224.html
Copyright © 2011-2022 走看看