MyBatis Generator实践

本文介绍如何使用MyBatis Generator自动生成代码,包括配置Maven项目、添加依赖、配置generatorConfig.xml文件以及生成实体类、Mapper接口和XML文件的过程。通过示例详细展示了基于Maven项目的配置步骤和生成的文件样例。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

         MyBatis 是一款基于Java的持久层框架,而MyBatis Generator 是一个Mybatis的代码生成器,可以帮助我们根据数据库中表的设计生成对应的POJO实体类,XML Mapper文件,接口以及帮助类(也就是我们可以借助该类来进行简单的CRUD操作),避免手动去创建对应的类和xml文件,使我们专注于业务开发,提升开发效率。优秀之处在于支持定制化 SQL、存储过程以及高级映射。相对于Hibrate容易上手,不足之处是,实际业务开发中涉及的表比较多,需要手动书写大量SQL。Mybatis generator作为一款自动生成代码工具,可以帮助我们完成这部分工作,但是如果对联合查询和存储过程您仍然需要手写SQL和对象。下面主要介绍基于Maven和普通的Java工程两种方式来生成相应的文件。

创建Maven项目

         首先,在Idea下创建一个Maven项目如下:

1535123014_28_w1288_h682.png

         接着,在pom.xml文件中添加我们所需要用到的jar包的依赖以及添加mybatis-generator-maven-plugin插件,并且指定generatorConfig.xml。

<?xml version="1.0" encoding="UTF-8"?>
<project xmlns="http://maven.apache.org/POM/4.0.0"
         xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
         xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
    <modelVersion>4.0.0</modelVersion>
    <groupId>com.demo</groupId>
    <artifactId>mybatis-generate</artifactId>
    <version>1.0-SNAPSHOT</version>
    <properties>
        <java.version>1.8</java.version>
        <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
    </properties>
    <dependencies>
        <dependency>
            <groupId>org.mybatis</groupId>
            <artifactId>mybatis</artifactId>
            <version>3.3.0</version>
        </dependency>
        <dependency>
            <groupId>mysql</groupId>
            <artifactId>mysql-connector-java</artifactId>
            <version>5.1.30</version>
        </dependency>
        <dependency>
            <groupId>log4j</groupId>
            <artifactId>log4j</artifactId>
            <version>1.2.17</version>
        </dependency>
    </dependencies>

    <build>
        <plugins>
            <plugin>
                <groupId>org.apache.maven.plugins</groupId>
                <artifactId>maven-surefire-plugin</artifactId>
                <configuration>
                    <testFailureIgnore>true</testFailureIgnore>
                </configuration>
            </plugin>

            <plugin>
                <groupId>org.mybatis.generator</groupId>
                <artifactId>mybatis-generator-maven-plugin</artifactId>
                <version>1.3.2</version>
                <configuration>
                    <configurationFile>src/main/resources/mybatis-generator/generatorConfig.xml</configurationFile>
                    <verbose>true</verbose>
                    <overwrite>true</overwrite>
                </configuration>
                <executions>
                    <execution>
                        <id>Generate MyBatis Artifacts</id>
                        <goals>
                            <goal>generate</goal>
                        </goals>
                    </execution>
                </executions>
                <dependencies>
                    <dependency>
                        <groupId>org.mybatis.generator</groupId>
                        <artifactId>mybatis-generator-core</artifactId>
                        <version>1.3.2</version>
                    </dependency>
                    <dependency>
                        <groupId>com.oracle</groupId>
                        <artifactId>ojdbc6</artifactId>
                        <version>11.2.0.3</version>
                    </dependency>
                </dependencies>
            </plugin>
        </plugins>
    </build>
</project>

配置文件

         mybatis-generator-config.xml是最重要的配置文件,里面主要配置连接数据库的配置和生成的文件配置信息以及最重要的就是我们要生成的实体类所对应的的表或者视图。

<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE generatorConfiguration
        PUBLIC "-//mybatis.org//DTD MyBatis Generator Configuration 1.0//EN"
        "http://mybatis.org/dtd/mybatis-generator-config_1_0.dtd">
<generatorConfiguration>
    <!-- 数据库驱动  (修改为自己的版本)-->
    <context id="adbtet"   targetRuntime="MyBatis3Simple" defaultModelType="flat">
        <commentGenerator>
            <property name="suppressDate" value="true"/>
            <!-- 是否去除自动生成的注释 true:是 : false:否 -->
            <property name="suppressAllComments" value="true"/>
            <!--是否合并-->
            <property name="mergeable" value="false"></property>
        </commentGenerator>
        <!--数据库链接URL,用户名、密码 -->
        <jdbcConnection driverClass="oracle.jdbc.driver.OracleDriver"
                        connectionURL="jdbc:oracle:thin:@10.125.224.207:1521:devmdm"
                        userId="smsdata"
                        password="smsdata2017">
            <!-- 针对oracle数据库 -->
            <property name="remarksReporting" value="true"></property>
        </jdbcConnection>
        <javaTypeResolver>
            <property name="forceBigDecimals" value="false"/>
        </javaTypeResolver>
        <!-- 生成模型的包名和位置-->
        <javaModelGenerator targetPackage="model" targetProject="src\main\java">
            <property name="enableSubPackages" value="false"/>
            <property name="trimStrings" value="true"/>
        </javaModelGenerator>
        <!-- 生成映射文件的包名和位置-->
        <sqlMapGenerator targetPackage="mapper" targetProject="src\main\resources">
            <property name="enableSubPackages" value="false"/>
        </sqlMapGenerator>
        <!-- 生成DAO的包名和位置-->
        <javaClientGenerator type="XMLMAPPER" targetPackage="repo.mapper" targetProject="src\main\java">
            <property name="enableSubPackages" value="false"/>
            <property name="trimStrings" value="true"/>
        </javaClientGenerator>
        
        <!-- 要生成的表: tableName是数据库中的表名或视图名 domainObjectName是实体类名-->
        <table tableName="SMS_WF_SUBMIT_REC_T" domainObjectName="SubmitRecBean">
            <generatedKey column="WF_SUBMIT_ID" sqlStatement="oracle" identity="" type=""/>
        </table>

    </context>
</generatorConfiguration>

一键生成

         配置好相关文件后,利用mybatis插件即可生成相应的实体,mapper,dao接口到上述配置指定的目录下。

1535124929_6_w399_h531.png

生成文件

假设我们要生成的表是SMS_WF_SUBMIT_REC_T,点击插件生成后,即可自动生成们需要的文件。

POJO实体

package model;
import java.util.Date;
public class SubmitRecBean {
    private Short wfSubmitId;
    private String processName;
    private String businessKey;
    private String instanceId;
    private String approveStatus;
    private String currentNodes;
    private String currentApprovers;
    private String busData;
    private Date creationDate;
    private Short createdBy;
    private String createdByName;
    private Date lastUpdateDate;
    private Short lastUpdatedBy;
    private String lastUpdatedByName;
    private String attributeCategory;
    private String attribute1;
    private String attribute2;
    private String attribute3;
    private String attribute4;
    private String attribute5;
    private String submitterModify;
    private String directLeader;
    private String relateApprover;
    private String dicisionMaker;
    public Short getWfSubmitId() {
        return wfSubmitId;
    }
    public void setWfSubmitId(Short wfSubmitId) {
        this.wfSubmitId = wfSubmitId;
    }
    public String getProcessName() {
        return processName;
    }
    public void setProcessName(String processName) {
        this.processName = processName == null ? null : processName.trim();
    }

    public String getBusinessKey() {
        return businessKey;
    }
    public void setBusinessKey(String businessKey) {
        this.businessKey = businessKey == null ? null : businessKey.trim();
    }
    public String getInstanceId() {
        return instanceId;
    }
    public void setInstanceId(String instanceId) {
        this.instanceId = instanceId == null ? null : instanceId.trim();
    }
    public String getApproveStatus() {
        return approveStatus;
    }
    public void setApproveStatus(String approveStatus) {
        this.approveStatus = approveStatus == null ? null : approveStatus.trim();
    }
    public String getCurrentNodes() {
        return currentNodes;
    }
    public void setCurrentNodes(String currentNodes) {
        this.currentNodes = currentNodes == null ? null : currentNodes.trim();
    }
    public String getCurrentApprovers() {
        return currentApprovers;
    }
    public void setCurrentApprovers(String currentApprovers) {
        this.currentApprovers = currentApprovers == null ? null : currentApprovers.trim();
    }
    public String getBusData() {
        return busData;
    }
    public void setBusData(String busData) {
        this.busData = busData == null ? null : busData.trim();
    }
    public Date getCreationDate() {
        return creationDate;
    }
    public void setCreationDate(Date creationDate) {
        this.creationDate = creationDate;
    }
    public Short getCreatedBy() {
        return createdBy;
    }
    public void setCreatedBy(Short createdBy) {
        this.createdBy = createdBy;
    }
    public String getCreatedByName() {
        return createdByName;
    }
    public void setCreatedByName(String createdByName) {
        this.createdByName = createdByName == null ? null : createdByName.trim();
    }
    public Date getLastUpdateDate() {
        return lastUpdateDate;
    }
    public void setLastUpdateDate(Date lastUpdateDate) {
        this.lastUpdateDate = lastUpdateDate;
    }
    public Short getLastUpdatedBy() {
        return lastUpdatedBy;
    }
    public void setLastUpdatedBy(Short lastUpdatedBy) {
        this.lastUpdatedBy = lastUpdatedBy;
    }
    public String getLastUpdatedByName() {
        return lastUpdatedByName;
    }
    public void setLastUpdatedByName(String lastUpdatedByName) {
        this.lastUpdatedByName = lastUpdatedByName == null ? null : lastUpdatedByName.trim();
    }
    public String getAttributeCategory() {
        return attributeCategory;
    }
    public void setAttributeCategory(String attributeCategory) {
        this.attributeCategory = attributeCategory == null ? null : attributeCategory.trim();
    }
    public String getAttribute1() {
        return attribute1;
    }
    public void setAttribute1(String attribute1) {
        this.attribute1 = attribute1 == null ? null : attribute1.trim();
    }
    public String getAttribute2() {
        return attribute2;
    }
    public void setAttribute2(String attribute2) {
        this.attribute2 = attribute2 == null ? null : attribute2.trim();
    }
    public String getAttribute3() {
        return attribute3;
    }
    public void setAttribute3(String attribute3) {
        this.attribute3 = attribute3 == null ? null : attribute3.trim();
    }
    public String getAttribute4() {
        return attribute4;
    }
    public void setAttribute4(String attribute4) {
        this.attribute4 = attribute4 == null ? null : attribute4.trim();
    }
    public String getAttribute5() {
        return attribute5;
    }
    public void setAttribute5(String attribute5) {
        this.attribute5 = attribute5 == null ? null : attribute5.trim();
    }
    public String getSubmitterModify() {
        return submitterModify;
    }
    public void setSubmitterModify(String submitterModify) {
        this.submitterModify = submitterModify == null ? null : submitterModify.trim();
    }
    public String getDirectLeader() {
        return directLeader;
    }
    public void setDirectLeader(String directLeader) {
        this.directLeader = directLeader == null ? null : directLeader.trim();
    }
    public String getRelateApprover() {
        return relateApprover;
    }
    public void setRelateApprover(String relateApprover) {
        this.relateApprover = relateApprover == null ? null : relateApprover.trim();
    }
    public String getDicisionMaker() {
        return dicisionMaker;
    }
    public void setDicisionMaker(String dicisionMaker) {
        this.dicisionMaker = dicisionMaker == null ? null : dicisionMaker.trim();
    }
}

POJO实体

package repo.mapper;

import java.util.List;
import model.SubmitRecBean;

public interface SubmitRecBeanMapper {
    int deleteByPrimaryKey(Short wfSubmitId);

    int insert(SubmitRecBean record);

    SubmitRecBean selectByPrimaryKey(Short wfSubmitId);

    List<SubmitRecBean> selectAll();

    int updateByPrimaryKey(SubmitRecBean record);
}

Mapper XML

<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
<mapper namespace="repo.mapper.SubmitRecBeanMapper">
  <resultMap id="BaseResultMap" type="model.SubmitRecBean">
    <id column="WF_SUBMIT_ID" jdbcType="DECIMAL" property="wfSubmitId" />
    <result column="PROCESS_NAME" jdbcType="VARCHAR" property="processName" />
    <result column="BUSINESS_KEY" jdbcType="VARCHAR" property="businessKey" />
    <result column="INSTANCE_ID" jdbcType="VARCHAR" property="instanceId" />
    <result column="APPROVE_STATUS" jdbcType="VARCHAR" property="approveStatus" />
    <result column="CURRENT_NODES" jdbcType="VARCHAR" property="currentNodes" />
    <result column="CURRENT_APPROVERS" jdbcType="VARCHAR" property="currentApprovers" />
    <result column="BUS_DATA" jdbcType="VARCHAR" property="busData" />
    <result column="CREATION_DATE" jdbcType="TIMESTAMP" property="creationDate" />
    <result column="CREATED_BY" jdbcType="DECIMAL" property="createdBy" />
    <result column="CREATED_BY_NAME" jdbcType="VARCHAR" property="createdByName" />
    <result column="LAST_UPDATE_DATE" jdbcType="TIMESTAMP" property="lastUpdateDate" />
    <result column="LAST_UPDATED_BY" jdbcType="DECIMAL" property="lastUpdatedBy" />
    <result column="LAST_UPDATED_BY_NAME" jdbcType="VARCHAR" property="lastUpdatedByName" />
    <result column="ATTRIBUTE_CATEGORY" jdbcType="VARCHAR" property="attributeCategory" />
    <result column="ATTRIBUTE1" jdbcType="VARCHAR" property="attribute1" />
    <result column="ATTRIBUTE2" jdbcType="VARCHAR" property="attribute2" />
    <result column="ATTRIBUTE3" jdbcType="VARCHAR" property="attribute3" />
    <result column="ATTRIBUTE4" jdbcType="VARCHAR" property="attribute4" />
    <result column="ATTRIBUTE5" jdbcType="VARCHAR" property="attribute5" />
    <result column="SUBMITTER_MODIFY" jdbcType="VARCHAR" property="submitterModify" />
    <result column="DIRECT_LEADER" jdbcType="VARCHAR" property="directLeader" />
    <result column="RELATE_APPROVER" jdbcType="VARCHAR" property="relateApprover" />
    <result column="DICISION_MAKER" jdbcType="VARCHAR" property="dicisionMaker" />
  </resultMap>
  <delete id="deleteByPrimaryKey" parameterType="java.lang.Short">
    delete from SMS_WF_SUBMIT_REC_T
    where WF_SUBMIT_ID = #{wfSubmitId,jdbcType=DECIMAL}
  </delete>
  <insert id="insert" parameterType="model.SubmitRecBean">
    <selectKey keyProperty="wfSubmitId" order="BEFORE" resultType="java.lang.Short">
      oracle
    </selectKey>
    insert into SMS_WF_SUBMIT_REC_T (WF_SUBMIT_ID, PROCESS_NAME, BUSINESS_KEY, 
      INSTANCE_ID, APPROVE_STATUS, CURRENT_NODES, 
      CURRENT_APPROVERS, BUS_DATA, CREATION_DATE, 
      CREATED_BY, CREATED_BY_NAME, LAST_UPDATE_DATE, 
      LAST_UPDATED_BY, LAST_UPDATED_BY_NAME, ATTRIBUTE_CATEGORY, 
      ATTRIBUTE1, ATTRIBUTE2, ATTRIBUTE3, 
      ATTRIBUTE4, ATTRIBUTE5, SUBMITTER_MODIFY, 
      DIRECT_LEADER, RELATE_APPROVER, DICISION_MAKER
      )
    values (#{wfSubmitId,jdbcType=DECIMAL}, #{processName,jdbcType=VARCHAR}, #{businessKey,jdbcType=VARCHAR}, 
      #{instanceId,jdbcType=VARCHAR}, #{approveStatus,jdbcType=VARCHAR}, #{currentNodes,jdbcType=VARCHAR}, 
      #{currentApprovers,jdbcType=VARCHAR}, #{busData,jdbcType=VARCHAR}, #{creationDate,jdbcType=TIMESTAMP}, 
      #{createdBy,jdbcType=DECIMAL}, #{createdByName,jdbcType=VARCHAR}, #{lastUpdateDate,jdbcType=TIMESTAMP}, 
      #{lastUpdatedBy,jdbcType=DECIMAL}, #{lastUpdatedByName,jdbcType=VARCHAR}, #{attributeCategory,jdbcType=VARCHAR}, 
      #{attribute1,jdbcType=VARCHAR}, #{attribute2,jdbcType=VARCHAR}, #{attribute3,jdbcType=VARCHAR}, 
      #{attribute4,jdbcType=VARCHAR}, #{attribute5,jdbcType=VARCHAR}, #{submitterModify,jdbcType=VARCHAR}, 
      #{directLeader,jdbcType=VARCHAR}, #{relateApprover,jdbcType=VARCHAR}, #{dicisionMaker,jdbcType=VARCHAR}
      )
  </insert>
  <update id="updateByPrimaryKey" parameterType="model.SubmitRecBean">
    update SMS_WF_SUBMIT_REC_T
    set PROCESS_NAME = #{processName,jdbcType=VARCHAR},
      BUSINESS_KEY = #{businessKey,jdbcType=VARCHAR},
      INSTANCE_ID = #{instanceId,jdbcType=VARCHAR},
      APPROVE_STATUS = #{approveStatus,jdbcType=VARCHAR},
      CURRENT_NODES = #{currentNodes,jdbcType=VARCHAR},
      CURRENT_APPROVERS = #{currentApprovers,jdbcType=VARCHAR},
      BUS_DATA = #{busData,jdbcType=VARCHAR},
      CREATION_DATE = #{creationDate,jdbcType=TIMESTAMP},
      CREATED_BY = #{createdBy,jdbcType=DECIMAL},
      CREATED_BY_NAME = #{createdByName,jdbcType=VARCHAR},
      LAST_UPDATE_DATE = #{lastUpdateDate,jdbcType=TIMESTAMP},
      LAST_UPDATED_BY = #{lastUpdatedBy,jdbcType=DECIMAL},
      LAST_UPDATED_BY_NAME = #{lastUpdatedByName,jdbcType=VARCHAR},
      ATTRIBUTE_CATEGORY = #{attributeCategory,jdbcType=VARCHAR},
      ATTRIBUTE1 = #{attribute1,jdbcType=VARCHAR},
      ATTRIBUTE2 = #{attribute2,jdbcType=VARCHAR},
      ATTRIBUTE3 = #{attribute3,jdbcType=VARCHAR},
      ATTRIBUTE4 = #{attribute4,jdbcType=VARCHAR},
      ATTRIBUTE5 = #{attribute5,jdbcType=VARCHAR},
      SUBMITTER_MODIFY = #{submitterModify,jdbcType=VARCHAR},
      DIRECT_LEADER = #{directLeader,jdbcType=VARCHAR},
      RELATE_APPROVER = #{relateApprover,jdbcType=VARCHAR},
      DICISION_MAKER = #{dicisionMaker,jdbcType=VARCHAR}
    where WF_SUBMIT_ID = #{wfSubmitId,jdbcType=DECIMAL}
  </update>
  <select id="selectByPrimaryKey" parameterType="java.lang.Short" resultMap="BaseResultMap">
    select WF_SUBMIT_ID, PROCESS_NAME, BUSINESS_KEY, INSTANCE_ID, APPROVE_STATUS, CURRENT_NODES, 
    CURRENT_APPROVERS, BUS_DATA, CREATION_DATE, CREATED_BY, CREATED_BY_NAME, LAST_UPDATE_DATE, 
    LAST_UPDATED_BY, LAST_UPDATED_BY_NAME, ATTRIBUTE_CATEGORY, ATTRIBUTE1, ATTRIBUTE2, 
    ATTRIBUTE3, ATTRIBUTE4, ATTRIBUTE5, SUBMITTER_MODIFY, DIRECT_LEADER, RELATE_APPROVER, 
    DICISION_MAKER
    from SMS_WF_SUBMIT_REC_T
    where WF_SUBMIT_ID = #{wfSubmitId,jdbcType=DECIMAL}
  </select>
  <select id="selectAll" resultMap="BaseResultMap">
    select WF_SUBMIT_ID, PROCESS_NAME, BUSINESS_KEY, INSTANCE_ID, APPROVE_STATUS, CURRENT_NODES, 
    CURRENT_APPROVERS, BUS_DATA, CREATION_DATE, CREATED_BY, CREATED_BY_NAME, LAST_UPDATE_DATE, 
    LAST_UPDATED_BY, LAST_UPDATED_BY_NAME, ATTRIBUTE_CATEGORY, ATTRIBUTE1, ATTRIBUTE2, 
    ATTRIBUTE3, ATTRIBUTE4, ATTRIBUTE5, SUBMITTER_MODIFY, DIRECT_LEADER, RELATE_APPROVER, 
    DICISION_MAKER
    from SMS_WF_SUBMIT_REC_T
  </select>
  <resultMap id="BaseResultMap" type="model.SubmitRecBean">
    <id column="WF_SUBMIT_ID" jdbcType="DECIMAL" property="wfSubmitId" />
    <result column="PROCESS_NAME" jdbcType="VARCHAR" property="processName" />
    <result column="BUSINESS_KEY" jdbcType="VARCHAR" property="businessKey" />
    <result column="INSTANCE_ID" jdbcType="VARCHAR" property="instanceId" />
    <result column="APPROVE_STATUS" jdbcType="VARCHAR" property="approveStatus" />
    <result column="CURRENT_NODES" jdbcType="VARCHAR" property="currentNodes" />
    <result column="CURRENT_APPROVERS" jdbcType="VARCHAR" property="currentApprovers" />
    <result column="BUS_DATA" jdbcType="VARCHAR" property="busData" />
    <result column="CREATION_DATE" jdbcType="TIMESTAMP" property="creationDate" />
    <result column="CREATED_BY" jdbcType="DECIMAL" property="createdBy" />
    <result column="CREATED_BY_NAME" jdbcType="VARCHAR" property="createdByName" />
    <result column="LAST_UPDATE_DATE" jdbcType="TIMESTAMP" property="lastUpdateDate" />
    <result column="LAST_UPDATED_BY" jdbcType="DECIMAL" property="lastUpdatedBy" />
    <result column="LAST_UPDATED_BY_NAME" jdbcType="VARCHAR" property="lastUpdatedByName" />
    <result column="ATTRIBUTE_CATEGORY" jdbcType="VARCHAR" property="attributeCategory" />
    <result column="ATTRIBUTE1" jdbcType="VARCHAR" property="attribute1" />
    <result column="ATTRIBUTE2" jdbcType="VARCHAR" property="attribute2" />
    <result column="ATTRIBUTE3" jdbcType="VARCHAR" property="attribute3" />
    <result column="ATTRIBUTE4" jdbcType="VARCHAR" property="attribute4" />
    <result column="ATTRIBUTE5" jdbcType="VARCHAR" property="attribute5" />
    <result column="SUBMITTER_MODIFY" jdbcType="VARCHAR" property="submitterModify" />
    <result column="DIRECT_LEADER" jdbcType="VARCHAR" property="directLeader" />
    <result column="RELATE_APPROVER" jdbcType="VARCHAR" property="relateApprover" />
    <result column="DICISION_MAKER" jdbcType="VARCHAR" property="dicisionMaker" />
  </resultMap>
  <delete id="deleteByPrimaryKey" parameterType="java.lang.Short">
    delete from SMS_WF_SUBMIT_REC_T
    where WF_SUBMIT_ID = #{wfSubmitId,jdbcType=DECIMAL}
  </delete>
  <insert id="insert" parameterType="model.SubmitRecBean">
    <selectKey keyProperty="wfSubmitId" order="BEFORE" resultType="java.lang.Short">
      oracle
    </selectKey>
    insert into SMS_WF_SUBMIT_REC_T (WF_SUBMIT_ID, PROCESS_NAME, BUSINESS_KEY, 
      INSTANCE_ID, APPROVE_STATUS, CURRENT_NODES, 
      CURRENT_APPROVERS, BUS_DATA, CREATION_DATE, 
      CREATED_BY, CREATED_BY_NAME, LAST_UPDATE_DATE, 
      LAST_UPDATED_BY, LAST_UPDATED_BY_NAME, ATTRIBUTE_CATEGORY, 
      ATTRIBUTE1, ATTRIBUTE2, ATTRIBUTE3, 
      ATTRIBUTE4, ATTRIBUTE5, SUBMITTER_MODIFY, 
      DIRECT_LEADER, RELATE_APPROVER, DICISION_MAKER
      )
    values (#{wfSubmitId,jdbcType=DECIMAL}, #{processName,jdbcType=VARCHAR}, #{businessKey,jdbcType=VARCHAR}, 
      #{instanceId,jdbcType=VARCHAR}, #{approveStatus,jdbcType=VARCHAR}, #{currentNodes,jdbcType=VARCHAR}, 
      #{currentApprovers,jdbcType=VARCHAR}, #{busData,jdbcType=VARCHAR}, #{creationDate,jdbcType=TIMESTAMP}, 
      #{createdBy,jdbcType=DECIMAL}, #{createdByName,jdbcType=VARCHAR}, #{lastUpdateDate,jdbcType=TIMESTAMP}, 
      #{lastUpdatedBy,jdbcType=DECIMAL}, #{lastUpdatedByName,jdbcType=VARCHAR}, #{attributeCategory,jdbcType=VARCHAR}, 
      #{attribute1,jdbcType=VARCHAR}, #{attribute2,jdbcType=VARCHAR}, #{attribute3,jdbcType=VARCHAR}, 
      #{attribute4,jdbcType=VARCHAR}, #{attribute5,jdbcType=VARCHAR}, #{submitterModify,jdbcType=VARCHAR}, 
      #{directLeader,jdbcType=VARCHAR}, #{relateApprover,jdbcType=VARCHAR}, #{dicisionMaker,jdbcType=VARCHAR}
      )
  </insert>
  <update id="updateByPrimaryKey" parameterType="model.SubmitRecBean">
    update SMS_WF_SUBMIT_REC_T
    set PROCESS_NAME = #{processName,jdbcType=VARCHAR},
      BUSINESS_KEY = #{businessKey,jdbcType=VARCHAR},
      INSTANCE_ID = #{instanceId,jdbcType=VARCHAR},
      APPROVE_STATUS = #{approveStatus,jdbcType=VARCHAR},
      CURRENT_NODES = #{currentNodes,jdbcType=VARCHAR},
      CURRENT_APPROVERS = #{currentApprovers,jdbcType=VARCHAR},
      BUS_DATA = #{busData,jdbcType=VARCHAR},
      CREATION_DATE = #{creationDate,jdbcType=TIMESTAMP},
      CREATED_BY = #{createdBy,jdbcType=DECIMAL},
      CREATED_BY_NAME = #{createdByName,jdbcType=VARCHAR},
      LAST_UPDATE_DATE = #{lastUpdateDate,jdbcType=TIMESTAMP},
      LAST_UPDATED_BY = #{lastUpdatedBy,jdbcType=DECIMAL},
      LAST_UPDATED_BY_NAME = #{lastUpdatedByName,jdbcType=VARCHAR},
      ATTRIBUTE_CATEGORY = #{attributeCategory,jdbcType=VARCHAR},
      ATTRIBUTE1 = #{attribute1,jdbcType=VARCHAR},
      ATTRIBUTE2 = #{attribute2,jdbcType=VARCHAR},
      ATTRIBUTE3 = #{attribute3,jdbcType=VARCHAR},
      ATTRIBUTE4 = #{attribute4,jdbcType=VARCHAR},
      ATTRIBUTE5 = #{attribute5,jdbcType=VARCHAR},
      SUBMITTER_MODIFY = #{submitterModify,jdbcType=VARCHAR},
      DIRECT_LEADER = #{directLeader,jdbcType=VARCHAR},
      RELATE_APPROVER = #{relateApprover,jdbcType=VARCHAR},
      DICISION_MAKER = #{dicisionMaker,jdbcType=VARCHAR}
    where WF_SUBMIT_ID = #{wfSubmitId,jdbcType=DECIMAL}
  </update>
  <select id="selectByPrimaryKey" parameterType="java.lang.Short" resultMap="BaseResultMap">
    select WF_SUBMIT_ID, PROCESS_NAME, BUSINESS_KEY, INSTANCE_ID, APPROVE_STATUS, CURRENT_NODES, 
    CURRENT_APPROVERS, BUS_DATA, CREATION_DATE, CREATED_BY, CREATED_BY_NAME, LAST_UPDATE_DATE, 
    LAST_UPDATED_BY, LAST_UPDATED_BY_NAME, ATTRIBUTE_CATEGORY, ATTRIBUTE1, ATTRIBUTE2, 
    ATTRIBUTE3, ATTRIBUTE4, ATTRIBUTE5, SUBMITTER_MODIFY, DIRECT_LEADER, RELATE_APPROVER, 
    DICISION_MAKER
    from SMS_WF_SUBMIT_REC_T
    where WF_SUBMIT_ID = #{wfSubmitId,jdbcType=DECIMAL}
  </select>
  <select id="selectAll" resultMap="BaseResultMap">
    select WF_SUBMIT_ID, PROCESS_NAME, BUSINESS_KEY, INSTANCE_ID, APPROVE_STATUS, CURRENT_NODES, 
    CURRENT_APPROVERS, BUS_DATA, CREATION_DATE, CREATED_BY, CREATED_BY_NAME, LAST_UPDATE_DATE, 
    LAST_UPDATED_BY, LAST_UPDATED_BY_NAME, ATTRIBUTE_CATEGORY, ATTRIBUTE1, ATTRIBUTE2, 
    ATTRIBUTE3, ATTRIBUTE4, ATTRIBUTE5, SUBMITTER_MODIFY, DIRECT_LEADER, RELATE_APPROVER, 
    DICISION_MAKER
    from SMS_WF_SUBMIT_REC_T
  </select>
  <resultMap id="BaseResultMap" type="model.SubmitRecBean">
    <id column="WF_SUBMIT_ID" jdbcType="DECIMAL" property="wfSubmitId" />
    <result column="PROCESS_NAME" jdbcType="VARCHAR" property="processName" />
    <result column="BUSINESS_KEY" jdbcType="VARCHAR" property="businessKey" />
    <result column="INSTANCE_ID" jdbcType="VARCHAR" property="instanceId" />
    <result column="APPROVE_STATUS" jdbcType="VARCHAR" property="approveStatus" />
    <result column="CURRENT_NODES" jdbcType="VARCHAR" property="currentNodes" />
    <result column="CURRENT_APPROVERS" jdbcType="VARCHAR" property="currentApprovers" />
    <result column="BUS_DATA" jdbcType="VARCHAR" property="busData" />
    <result column="CREATION_DATE" jdbcType="TIMESTAMP" property="creationDate" />
    <result column="CREATED_BY" jdbcType="DECIMAL" property="createdBy" />
    <result column="CREATED_BY_NAME" jdbcType="VARCHAR" property="createdByName" />
    <result column="LAST_UPDATE_DATE" jdbcType="TIMESTAMP" property="lastUpdateDate" />
    <result column="LAST_UPDATED_BY" jdbcType="DECIMAL" property="lastUpdatedBy" />
    <result column="LAST_UPDATED_BY_NAME" jdbcType="VARCHAR" property="lastUpdatedByName" />
    <result column="ATTRIBUTE_CATEGORY" jdbcType="VARCHAR" property="attributeCategory" />
    <result column="ATTRIBUTE1" jdbcType="VARCHAR" property="attribute1" />
    <result column="ATTRIBUTE2" jdbcType="VARCHAR" property="attribute2" />
    <result column="ATTRIBUTE3" jdbcType="VARCHAR" property="attribute3" />
    <result column="ATTRIBUTE4" jdbcType="VARCHAR" property="attribute4" />
    <result column="ATTRIBUTE5" jdbcType="VARCHAR" property="attribute5" />
    <result column="SUBMITTER_MODIFY" jdbcType="VARCHAR" property="submitterModify" />
    <result column="DIRECT_LEADER" jdbcType="VARCHAR" property="directLeader" />
    <result column="RELATE_APPROVER" jdbcType="VARCHAR" property="relateApprover" />
    <result column="DICISION_MAKER" jdbcType="VARCHAR" property="dicisionMaker" />
  </resultMap>
  <delete id="deleteByPrimaryKey" parameterType="java.lang.Short">
    delete from SMS_WF_SUBMIT_REC_T
    where WF_SUBMIT_ID = #{wfSubmitId,jdbcType=DECIMAL}
  </delete>
  <insert id="insert" parameterType="model.SubmitRecBean">
    <selectKey keyProperty="wfSubmitId" order="BEFORE" resultType="java.lang.Short">
      oracle
    </selectKey>
    insert into SMS_WF_SUBMIT_REC_T (WF_SUBMIT_ID, PROCESS_NAME, BUSINESS_KEY, 
      INSTANCE_ID, APPROVE_STATUS, CURRENT_NODES, 
      CURRENT_APPROVERS, BUS_DATA, CREATION_DATE, 
      CREATED_BY, CREATED_BY_NAME, LAST_UPDATE_DATE, 
      LAST_UPDATED_BY, LAST_UPDATED_BY_NAME, ATTRIBUTE_CATEGORY, 
      ATTRIBUTE1, ATTRIBUTE2, ATTRIBUTE3, 
      ATTRIBUTE4, ATTRIBUTE5, SUBMITTER_MODIFY, 
      DIRECT_LEADER, RELATE_APPROVER, DICISION_MAKER
      )
    values (#{wfSubmitId,jdbcType=DECIMAL}, #{processName,jdbcType=VARCHAR}, #{businessKey,jdbcType=VARCHAR}, 
      #{instanceId,jdbcType=VARCHAR}, #{approveStatus,jdbcType=VARCHAR}, #{currentNodes,jdbcType=VARCHAR}, 
      #{currentApprovers,jdbcType=VARCHAR}, #{busData,jdbcType=VARCHAR}, #{creationDate,jdbcType=TIMESTAMP}, 
      #{createdBy,jdbcType=DECIMAL}, #{createdByName,jdbcType=VARCHAR}, #{lastUpdateDate,jdbcType=TIMESTAMP}, 
      #{lastUpdatedBy,jdbcType=DECIMAL}, #{lastUpdatedByName,jdbcType=VARCHAR}, #{attributeCategory,jdbcType=VARCHAR}, 
      #{attribute1,jdbcType=VARCHAR}, #{attribute2,jdbcType=VARCHAR}, #{attribute3,jdbcType=VARCHAR}, 
      #{attribute4,jdbcType=VARCHAR}, #{attribute5,jdbcType=VARCHAR}, #{submitterModify,jdbcType=VARCHAR}, 
      #{directLeader,jdbcType=VARCHAR}, #{relateApprover,jdbcType=VARCHAR}, #{dicisionMaker,jdbcType=VARCHAR}
      )
  </insert>
  <update id="updateByPrimaryKey" parameterType="model.SubmitRecBean">
    update SMS_WF_SUBMIT_REC_T
    set PROCESS_NAME = #{processName,jdbcType=VARCHAR},
      BUSINESS_KEY = #{businessKey,jdbcType=VARCHAR},
      INSTANCE_ID = #{instanceId,jdbcType=VARCHAR},
      APPROVE_STATUS = #{approveStatus,jdbcType=VARCHAR},
      CURRENT_NODES = #{currentNodes,jdbcType=VARCHAR},
      CURRENT_APPROVERS = #{currentApprovers,jdbcType=VARCHAR},
      BUS_DATA = #{busData,jdbcType=VARCHAR},
      CREATION_DATE = #{creationDate,jdbcType=TIMESTAMP},
      CREATED_BY = #{createdBy,jdbcType=DECIMAL},
      CREATED_BY_NAME = #{createdByName,jdbcType=VARCHAR},
      LAST_UPDATE_DATE = #{lastUpdateDate,jdbcType=TIMESTAMP},
      LAST_UPDATED_BY = #{lastUpdatedBy,jdbcType=DECIMAL},
      LAST_UPDATED_BY_NAME = #{lastUpdatedByName,jdbcType=VARCHAR},
      ATTRIBUTE_CATEGORY = #{attributeCategory,jdbcType=VARCHAR},
      ATTRIBUTE1 = #{attribute1,jdbcType=VARCHAR},
      ATTRIBUTE2 = #{attribute2,jdbcType=VARCHAR},
      ATTRIBUTE3 = #{attribute3,jdbcType=VARCHAR},
      ATTRIBUTE4 = #{attribute4,jdbcType=VARCHAR},
      ATTRIBUTE5 = #{attribute5,jdbcType=VARCHAR},
      SUBMITTER_MODIFY = #{submitterModify,jdbcType=VARCHAR},
      DIRECT_LEADER = #{directLeader,jdbcType=VARCHAR},
      RELATE_APPROVER = #{relateApprover,jdbcType=VARCHAR},
      DICISION_MAKER = #{dicisionMaker,jdbcType=VARCHAR}
    where WF_SUBMIT_ID = #{wfSubmitId,jdbcType=DECIMAL}
  </update>
  <select id="selectByPrimaryKey" parameterType="java.lang.Short" resultMap="BaseResultMap">
    select WF_SUBMIT_ID, PROCESS_NAME, BUSINESS_KEY, INSTANCE_ID, APPROVE_STATUS, CURRENT_NODES, 
    CURRENT_APPROVERS, BUS_DATA, CREATION_DATE, CREATED_BY, CREATED_BY_NAME, LAST_UPDATE_DATE, 
    LAST_UPDATED_BY, LAST_UPDATED_BY_NAME, ATTRIBUTE_CATEGORY, ATTRIBUTE1, ATTRIBUTE2, 
    ATTRIBUTE3, ATTRIBUTE4, ATTRIBUTE5, SUBMITTER_MODIFY, DIRECT_LEADER, RELATE_APPROVER, 
    DICISION_MAKER
    from SMS_WF_SUBMIT_REC_T
    where WF_SUBMIT_ID = #{wfSubmitId,jdbcType=DECIMAL}
  </select>
  <select id="selectAll" resultMap="BaseResultMap">
    select WF_SUBMIT_ID, PROCESS_NAME, BUSINESS_KEY, INSTANCE_ID, APPROVE_STATUS, CURRENT_NODES, 
    CURRENT_APPROVERS, BUS_DATA, CREATION_DATE, CREATED_BY, CREATED_BY_NAME, LAST_UPDATE_DATE, 
    LAST_UPDATED_BY, LAST_UPDATED_BY_NAME, ATTRIBUTE_CATEGORY, ATTRIBUTE1, ATTRIBUTE2, 
    ATTRIBUTE3, ATTRIBUTE4, ATTRIBUTE5, SUBMITTER_MODIFY, DIRECT_LEADER, RELATE_APPROVER, 
    DICISION_MAKER
    from SMS_WF_SUBMIT_REC_T
  </select>
  <resultMap id="BaseResultMap" type="model.SubmitRecBean">
    <id column="WF_SUBMIT_ID" jdbcType="DECIMAL" property="wfSubmitId" />
    <result column="PROCESS_NAME" jdbcType="VARCHAR" property="processName" />
    <result column="BUSINESS_KEY" jdbcType="VARCHAR" property="businessKey" />
    <result column="INSTANCE_ID" jdbcType="VARCHAR" property="instanceId" />
    <result column="APPROVE_STATUS" jdbcType="VARCHAR" property="approveStatus" />
    <result column="CURRENT_NODES" jdbcType="VARCHAR" property="currentNodes" />
    <result column="CURRENT_APPROVERS" jdbcType="VARCHAR" property="currentApprovers" />
    <result column="BUS_DATA" jdbcType="VARCHAR" property="busData" />
    <result column="CREATION_DATE" jdbcType="TIMESTAMP" property="creationDate" />
    <result column="CREATED_BY" jdbcType="DECIMAL" property="createdBy" />
    <result column="CREATED_BY_NAME" jdbcType="VARCHAR" property="createdByName" />
    <result column="LAST_UPDATE_DATE" jdbcType="TIMESTAMP" property="lastUpdateDate" />
    <result column="LAST_UPDATED_BY" jdbcType="DECIMAL" property="lastUpdatedBy" />
    <result column="LAST_UPDATED_BY_NAME" jdbcType="VARCHAR" property="lastUpdatedByName" />
    <result column="ATTRIBUTE_CATEGORY" jdbcType="VARCHAR" property="attributeCategory" />
    <result column="ATTRIBUTE1" jdbcType="VARCHAR" property="attribute1" />
    <result column="ATTRIBUTE2" jdbcType="VARCHAR" property="attribute2" />
    <result column="ATTRIBUTE3" jdbcType="VARCHAR" property="attribute3" />
    <result column="ATTRIBUTE4" jdbcType="VARCHAR" property="attribute4" />
    <result column="ATTRIBUTE5" jdbcType="VARCHAR" property="attribute5" />
    <result column="SUBMITTER_MODIFY" jdbcType="VARCHAR" property="submitterModify" />
    <result column="DIRECT_LEADER" jdbcType="VARCHAR" property="directLeader" />
    <result column="RELATE_APPROVER" jdbcType="VARCHAR" property="relateApprover" />
    <result column="DICISION_MAKER" jdbcType="VARCHAR" property="dicisionMaker" />
  </resultMap>
  <delete id="deleteByPrimaryKey" parameterType="java.lang.Short">
    delete from SMS_WF_SUBMIT_REC_T
    where WF_SUBMIT_ID = #{wfSubmitId,jdbcType=DECIMAL}
  </delete>
  <insert id="insert" parameterType="model.SubmitRecBean">
    <selectKey keyProperty="wfSubmitId" order="BEFORE" resultType="java.lang.Short">
      oracle
    </selectKey>
    insert into SMS_WF_SUBMIT_REC_T (WF_SUBMIT_ID, PROCESS_NAME, BUSINESS_KEY, 
      INSTANCE_ID, APPROVE_STATUS, CURRENT_NODES, 
      CURRENT_APPROVERS, BUS_DATA, CREATION_DATE, 
      CREATED_BY, CREATED_BY_NAME, LAST_UPDATE_DATE, 
      LAST_UPDATED_BY, LAST_UPDATED_BY_NAME, ATTRIBUTE_CATEGORY, 
      ATTRIBUTE1, ATTRIBUTE2, ATTRIBUTE3, 
      ATTRIBUTE4, ATTRIBUTE5, SUBMITTER_MODIFY, 
      DIRECT_LEADER, RELATE_APPROVER, DICISION_MAKER
      )
    values (#{wfSubmitId,jdbcType=DECIMAL}, #{processName,jdbcType=VARCHAR}, #{businessKey,jdbcType=VARCHAR}, 
      #{instanceId,jdbcType=VARCHAR}, #{approveStatus,jdbcType=VARCHAR}, #{currentNodes,jdbcType=VARCHAR}, 
      #{currentApprovers,jdbcType=VARCHAR}, #{busData,jdbcType=VARCHAR}, #{creationDate,jdbcType=TIMESTAMP}, 
      #{createdBy,jdbcType=DECIMAL}, #{createdByName,jdbcType=VARCHAR}, #{lastUpdateDate,jdbcType=TIMESTAMP}, 
      #{lastUpdatedBy,jdbcType=DECIMAL}, #{lastUpdatedByName,jdbcType=VARCHAR}, #{attributeCategory,jdbcType=VARCHAR}, 
      #{attribute1,jdbcType=VARCHAR}, #{attribute2,jdbcType=VARCHAR}, #{attribute3,jdbcType=VARCHAR}, 
      #{attribute4,jdbcType=VARCHAR}, #{attribute5,jdbcType=VARCHAR}, #{submitterModify,jdbcType=VARCHAR}, 
      #{directLeader,jdbcType=VARCHAR}, #{relateApprover,jdbcType=VARCHAR}, #{dicisionMaker,jdbcType=VARCHAR}
      )
  </insert>
  <update id="updateByPrimaryKey" parameterType="model.SubmitRecBean">
    update SMS_WF_SUBMIT_REC_T
    set PROCESS_NAME = #{processName,jdbcType=VARCHAR},
      BUSINESS_KEY = #{businessKey,jdbcType=VARCHAR},
      INSTANCE_ID = #{instanceId,jdbcType=VARCHAR},
      APPROVE_STATUS = #{approveStatus,jdbcType=VARCHAR},
      CURRENT_NODES = #{currentNodes,jdbcType=VARCHAR},
      CURRENT_APPROVERS = #{currentApprovers,jdbcType=VARCHAR},
      BUS_DATA = #{busData,jdbcType=VARCHAR},
      CREATION_DATE = #{creationDate,jdbcType=TIMESTAMP},
      CREATED_BY = #{createdBy,jdbcType=DECIMAL},
      CREATED_BY_NAME = #{createdByName,jdbcType=VARCHAR},
      LAST_UPDATE_DATE = #{lastUpdateDate,jdbcType=TIMESTAMP},
      LAST_UPDATED_BY = #{lastUpdatedBy,jdbcType=DECIMAL},
      LAST_UPDATED_BY_NAME = #{lastUpdatedByName,jdbcType=VARCHAR},
      ATTRIBUTE_CATEGORY = #{attributeCategory,jdbcType=VARCHAR},
      ATTRIBUTE1 = #{attribute1,jdbcType=VARCHAR},
      ATTRIBUTE2 = #{attribute2,jdbcType=VARCHAR},
      ATTRIBUTE3 = #{attribute3,jdbcType=VARCHAR},
      ATTRIBUTE4 = #{attribute4,jdbcType=VARCHAR},
      ATTRIBUTE5 = #{attribute5,jdbcType=VARCHAR},
      SUBMITTER_MODIFY = #{submitterModify,jdbcType=VARCHAR},
      DIRECT_LEADER = #{directLeader,jdbcType=VARCHAR},
      RELATE_APPROVER = #{relateApprover,jdbcType=VARCHAR},
      DICISION_MAKER = #{dicisionMaker,jdbcType=VARCHAR}
    where WF_SUBMIT_ID = #{wfSubmitId,jdbcType=DECIMAL}
  </update>
  <select id="selectByPrimaryKey" parameterType="java.lang.Short" resultMap="BaseResultMap">
    select WF_SUBMIT_ID, PROCESS_NAME, BUSINESS_KEY, INSTANCE_ID, APPROVE_STATUS, CURRENT_NODES, 
    CURRENT_APPROVERS, BUS_DATA, CREATION_DATE, CREATED_BY, CREATED_BY_NAME, LAST_UPDATE_DATE, 
    LAST_UPDATED_BY, LAST_UPDATED_BY_NAME, ATTRIBUTE_CATEGORY, ATTRIBUTE1, ATTRIBUTE2, 
    ATTRIBUTE3, ATTRIBUTE4, ATTRIBUTE5, SUBMITTER_MODIFY, DIRECT_LEADER, RELATE_APPROVER, 
    DICISION_MAKER
    from SMS_WF_SUBMIT_REC_T
    where WF_SUBMIT_ID = #{wfSubmitId,jdbcType=DECIMAL}
  </select>
  <select id="selectAll" resultMap="BaseResultMap">
    select WF_SUBMIT_ID, PROCESS_NAME, BUSINESS_KEY, INSTANCE_ID, APPROVE_STATUS, CURRENT_NODES, 
    CURRENT_APPROVERS, BUS_DATA, CREATION_DATE, CREATED_BY, CREATED_BY_NAME, LAST_UPDATE_DATE, 
    LAST_UPDATED_BY, LAST_UPDATED_BY_NAME, ATTRIBUTE_CATEGORY, ATTRIBUTE1, ATTRIBUTE2, 
    ATTRIBUTE3, ATTRIBUTE4, ATTRIBUTE5, SUBMITTER_MODIFY, DIRECT_LEADER, RELATE_APPROVER, 
    DICISION_MAKER
    from SMS_WF_SUBMIT_REC_T
  </select>
  <resultMap id="BaseResultMap" type="model.SubmitRecBean">
    <id column="WF_SUBMIT_ID" jdbcType="DECIMAL" property="wfSubmitId" />
    <result column="PROCESS_NAME" jdbcType="VARCHAR" property="processName" />
    <result column="BUSINESS_KEY" jdbcType="VARCHAR" property="businessKey" />
    <result column="INSTANCE_ID" jdbcType="VARCHAR" property="instanceId" />
    <result column="APPROVE_STATUS" jdbcType="VARCHAR" property="approveStatus" />
    <result column="CURRENT_NODES" jdbcType="VARCHAR" property="currentNodes" />
    <result column="CURRENT_APPROVERS" jdbcType="VARCHAR" property="currentApprovers" />
    <result column="BUS_DATA" jdbcType="VARCHAR" property="busData" />
    <result column="CREATION_DATE" jdbcType="TIMESTAMP" property="creationDate" />
    <result column="CREATED_BY" jdbcType="DECIMAL" property="createdBy" />
    <result column="CREATED_BY_NAME" jdbcType="VARCHAR" property="createdByName" />
    <result column="LAST_UPDATE_DATE" jdbcType="TIMESTAMP" property="lastUpdateDate" />
    <result column="LAST_UPDATED_BY" jdbcType="DECIMAL" property="lastUpdatedBy" />
    <result column="LAST_UPDATED_BY_NAME" jdbcType="VARCHAR" property="lastUpdatedByName" />
    <result column="ATTRIBUTE_CATEGORY" jdbcType="VARCHAR" property="attributeCategory" />
    <result column="ATTRIBUTE1" jdbcType="VARCHAR" property="attribute1" />
    <result column="ATTRIBUTE2" jdbcType="VARCHAR" property="attribute2" />
    <result column="ATTRIBUTE3" jdbcType="VARCHAR" property="attribute3" />
    <result column="ATTRIBUTE4" jdbcType="VARCHAR" property="attribute4" />
    <result column="ATTRIBUTE5" jdbcType="VARCHAR" property="attribute5" />
    <result column="SUBMITTER_MODIFY" jdbcType="VARCHAR" property="submitterModify" />
    <result column="DIRECT_LEADER" jdbcType="VARCHAR" property="directLeader" />
    <result column="RELATE_APPROVER" jdbcType="VARCHAR" property="relateApprover" />
    <result column="DICISION_MAKER" jdbcType="VARCHAR" property="dicisionMaker" />
  </resultMap>
  <delete id="deleteByPrimaryKey" parameterType="java.lang.Short">
    delete from SMS_WF_SUBMIT_REC_T
    where WF_SUBMIT_ID = #{wfSubmitId,jdbcType=DECIMAL}
  </delete>
  <insert id="insert" parameterType="model.SubmitRecBean">
    <selectKey keyProperty="wfSubmitId" order="BEFORE" resultType="java.lang.Short">
      oracle
    </selectKey>
    insert into SMS_WF_SUBMIT_REC_T (WF_SUBMIT_ID, PROCESS_NAME, BUSINESS_KEY, 
      INSTANCE_ID, APPROVE_STATUS, CURRENT_NODES, 
      CURRENT_APPROVERS, BUS_DATA, CREATION_DATE, 
      CREATED_BY, CREATED_BY_NAME, LAST_UPDATE_DATE, 
      LAST_UPDATED_BY, LAST_UPDATED_BY_NAME, ATTRIBUTE_CATEGORY, 
      ATTRIBUTE1, ATTRIBUTE2, ATTRIBUTE3, 
      ATTRIBUTE4, ATTRIBUTE5, SUBMITTER_MODIFY, 
      DIRECT_LEADER, RELATE_APPROVER, DICISION_MAKER
      )
    values (#{wfSubmitId,jdbcType=DECIMAL}, #{processName,jdbcType=VARCHAR}, #{businessKey,jdbcType=VARCHAR}, 
      #{instanceId,jdbcType=VARCHAR}, #{approveStatus,jdbcType=VARCHAR}, #{currentNodes,jdbcType=VARCHAR}, 
      #{currentApprovers,jdbcType=VARCHAR}, #{busData,jdbcType=VARCHAR}, #{creationDate,jdbcType=TIMESTAMP}, 
      #{createdBy,jdbcType=DECIMAL}, #{createdByName,jdbcType=VARCHAR}, #{lastUpdateDate,jdbcType=TIMESTAMP}, 
      #{lastUpdatedBy,jdbcType=DECIMAL}, #{lastUpdatedByName,jdbcType=VARCHAR}, #{attributeCategory,jdbcType=VARCHAR}, 
      #{attribute1,jdbcType=VARCHAR}, #{attribute2,jdbcType=VARCHAR}, #{attribute3,jdbcType=VARCHAR}, 
      #{attribute4,jdbcType=VARCHAR}, #{attribute5,jdbcType=VARCHAR}, #{submitterModify,jdbcType=VARCHAR}, 
      #{directLeader,jdbcType=VARCHAR}, #{relateApprover,jdbcType=VARCHAR}, #{dicisionMaker,jdbcType=VARCHAR}
      )
  </insert>
  <update id="updateByPrimaryKey" parameterType="model.SubmitRecBean">
    update SMS_WF_SUBMIT_REC_T
    set PROCESS_NAME = #{processName,jdbcType=VARCHAR},
      BUSINESS_KEY = #{businessKey,jdbcType=VARCHAR},
      INSTANCE_ID = #{instanceId,jdbcType=VARCHAR},
      APPROVE_STATUS = #{approveStatus,jdbcType=VARCHAR},
      CURRENT_NODES = #{currentNodes,jdbcType=VARCHAR},
      CURRENT_APPROVERS = #{currentApprovers,jdbcType=VARCHAR},
      BUS_DATA = #{busData,jdbcType=VARCHAR},
      CREATION_DATE = #{creationDate,jdbcType=TIMESTAMP},
      CREATED_BY = #{createdBy,jdbcType=DECIMAL},
      CREATED_BY_NAME = #{createdByName,jdbcType=VARCHAR},
      LAST_UPDATE_DATE = #{lastUpdateDate,jdbcType=TIMESTAMP},
      LAST_UPDATED_BY = #{lastUpdatedBy,jdbcType=DECIMAL},
      LAST_UPDATED_BY_NAME = #{lastUpdatedByName,jdbcType=VARCHAR},
      ATTRIBUTE_CATEGORY = #{attributeCategory,jdbcType=VARCHAR},
      ATTRIBUTE1 = #{attribute1,jdbcType=VARCHAR},
      ATTRIBUTE2 = #{attribute2,jdbcType=VARCHAR},
      ATTRIBUTE3 = #{attribute3,jdbcType=VARCHAR},
      ATTRIBUTE4 = #{attribute4,jdbcType=VARCHAR},
      ATTRIBUTE5 = #{attribute5,jdbcType=VARCHAR},
      SUBMITTER_MODIFY = #{submitterModify,jdbcType=VARCHAR},
      DIRECT_LEADER = #{directLeader,jdbcType=VARCHAR},
      RELATE_APPROVER = #{relateApprover,jdbcType=VARCHAR},
      DICISION_MAKER = #{dicisionMaker,jdbcType=VARCHAR}
    where WF_SUBMIT_ID = #{wfSubmitId,jdbcType=DECIMAL}
  </update>
  <select id="selectByPrimaryKey" parameterType="java.lang.Short" resultMap="BaseResultMap">
    select WF_SUBMIT_ID, PROCESS_NAME, BUSINESS_KEY, INSTANCE_ID, APPROVE_STATUS, CURRENT_NODES, 
    CURRENT_APPROVERS, BUS_DATA, CREATION_DATE, CREATED_BY, CREATED_BY_NAME, LAST_UPDATE_DATE, 
    LAST_UPDATED_BY, LAST_UPDATED_BY_NAME, ATTRIBUTE_CATEGORY, ATTRIBUTE1, ATTRIBUTE2, 
    ATTRIBUTE3, ATTRIBUTE4, ATTRIBUTE5, SUBMITTER_MODIFY, DIRECT_LEADER, RELATE_APPROVER, 
    DICISION_MAKER
    from SMS_WF_SUBMIT_REC_T
    where WF_SUBMIT_ID = #{wfSubmitId,jdbcType=DECIMAL}
  </select>
  <select id="selectAll" resultMap="BaseResultMap">
    select WF_SUBMIT_ID, PROCESS_NAME, BUSINESS_KEY, INSTANCE_ID, APPROVE_STATUS, CURRENT_NODES, 
    CURRENT_APPROVERS, BUS_DATA, CREATION_DATE, CREATED_BY, CREATED_BY_NAME, LAST_UPDATE_DATE, 
    LAST_UPDATED_BY, LAST_UPDATED_BY_NAME, ATTRIBUTE_CATEGORY, ATTRIBUTE1, ATTRIBUTE2, 
    ATTRIBUTE3, ATTRIBUTE4, ATTRIBUTE5, SUBMITTER_MODIFY, DIRECT_LEADER, RELATE_APPROVER, 
    DICISION_MAKER
    from SMS_WF_SUBMIT_REC_T
  </select>
  <resultMap id="BaseResultMap" type="model.SubmitRecBean">
    <id column="WF_SUBMIT_ID" jdbcType="DECIMAL" property="wfSubmitId" />
    <result column="PROCESS_NAME" jdbcType="VARCHAR" property="processName" />
    <result column="BUSINESS_KEY" jdbcType="VARCHAR" property="businessKey" />
    <result column="INSTANCE_ID" jdbcType="VARCHAR" property="instanceId" />
    <result column="APPROVE_STATUS" jdbcType="VARCHAR" property="approveStatus" />
    <result column="CURRENT_NODES" jdbcType="VARCHAR" property="currentNodes" />
    <result column="CURRENT_APPROVERS" jdbcType="VARCHAR" property="currentApprovers" />
    <result column="BUS_DATA" jdbcType="VARCHAR" property="busData" />
    <result column="CREATION_DATE" jdbcType="TIMESTAMP" property="creationDate" />
    <result column="CREATED_BY" jdbcType="DECIMAL" property="createdBy" />
    <result column="CREATED_BY_NAME" jdbcType="VARCHAR" property="createdByName" />
    <result column="LAST_UPDATE_DATE" jdbcType="TIMESTAMP" property="lastUpdateDate" />
    <result column="LAST_UPDATED_BY" jdbcType="DECIMAL" property="lastUpdatedBy" />
    <result column="LAST_UPDATED_BY_NAME" jdbcType="VARCHAR" property="lastUpdatedByName" />
    <result column="ATTRIBUTE_CATEGORY" jdbcType="VARCHAR" property="attributeCategory" />
    <result column="ATTRIBUTE1" jdbcType="VARCHAR" property="attribute1" />
    <result column="ATTRIBUTE2" jdbcType="VARCHAR" property="attribute2" />
    <result column="ATTRIBUTE3" jdbcType="VARCHAR" property="attribute3" />
    <result column="ATTRIBUTE4" jdbcType="VARCHAR" property="attribute4" />
    <result column="ATTRIBUTE5" jdbcType="VARCHAR" property="attribute5" />
    <result column="SUBMITTER_MODIFY" jdbcType="VARCHAR" property="submitterModify" />
    <result column="DIRECT_LEADER" jdbcType="VARCHAR" property="directLeader" />
    <result column="RELATE_APPROVER" jdbcType="VARCHAR" property="relateApprover" />
    <result column="DICISION_MAKER" jdbcType="VARCHAR" property="dicisionMaker" />
  </resultMap>
  <delete id="deleteByPrimaryKey" parameterType="java.lang.Short">
    delete from SMS_WF_SUBMIT_REC_T
    where WF_SUBMIT_ID = #{wfSubmitId,jdbcType=DECIMAL}
  </delete>
  <insert id="insert" parameterType="model.SubmitRecBean">
    <selectKey keyProperty="wfSubmitId" order="BEFORE" resultType="java.lang.Short">
      oracle
    </selectKey>
    insert into SMS_WF_SUBMIT_REC_T (WF_SUBMIT_ID, PROCESS_NAME, BUSINESS_KEY, 
      INSTANCE_ID, APPROVE_STATUS, CURRENT_NODES, 
      CURRENT_APPROVERS, BUS_DATA, CREATION_DATE, 
      CREATED_BY, CREATED_BY_NAME, LAST_UPDATE_DATE, 
      LAST_UPDATED_BY, LAST_UPDATED_BY_NAME, ATTRIBUTE_CATEGORY, 
      ATTRIBUTE1, ATTRIBUTE2, ATTRIBUTE3, 
      ATTRIBUTE4, ATTRIBUTE5, SUBMITTER_MODIFY, 
      DIRECT_LEADER, RELATE_APPROVER, DICISION_MAKER
      )
    values (#{wfSubmitId,jdbcType=DECIMAL}, #{processName,jdbcType=VARCHAR}, #{businessKey,jdbcType=VARCHAR}, 
      #{instanceId,jdbcType=VARCHAR}, #{approveStatus,jdbcType=VARCHAR}, #{currentNodes,jdbcType=VARCHAR}, 
      #{currentApprovers,jdbcType=VARCHAR}, #{busData,jdbcType=VARCHAR}, #{creationDate,jdbcType=TIMESTAMP}, 
      #{createdBy,jdbcType=DECIMAL}, #{createdByName,jdbcType=VARCHAR}, #{lastUpdateDate,jdbcType=TIMESTAMP}, 
      #{lastUpdatedBy,jdbcType=DECIMAL}, #{lastUpdatedByName,jdbcType=VARCHAR}, #{attributeCategory,jdbcType=VARCHAR}, 
      #{attribute1,jdbcType=VARCHAR}, #{attribute2,jdbcType=VARCHAR}, #{attribute3,jdbcType=VARCHAR}, 
      #{attribute4,jdbcType=VARCHAR}, #{attribute5,jdbcType=VARCHAR}, #{submitterModify,jdbcType=VARCHAR}, 
      #{directLeader,jdbcType=VARCHAR}, #{relateApprover,jdbcType=VARCHAR}, #{dicisionMaker,jdbcType=VARCHAR}
      )
  </insert>
  <update id="updateByPrimaryKey" parameterType="model.SubmitRecBean">
    update SMS_WF_SUBMIT_REC_T
    set PROCESS_NAME = #{processName,jdbcType=VARCHAR},
      BUSINESS_KEY = #{businessKey,jdbcType=VARCHAR},
      INSTANCE_ID = #{instanceId,jdbcType=VARCHAR},
      APPROVE_STATUS = #{approveStatus,jdbcType=VARCHAR},
      CURRENT_NODES = #{currentNodes,jdbcType=VARCHAR},
      CURRENT_APPROVERS = #{currentApprovers,jdbcType=VARCHAR},
      BUS_DATA = #{busData,jdbcType=VARCHAR},
      CREATION_DATE = #{creationDate,jdbcType=TIMESTAMP},
      CREATED_BY = #{createdBy,jdbcType=DECIMAL},
      CREATED_BY_NAME = #{createdByName,jdbcType=VARCHAR},
      LAST_UPDATE_DATE = #{lastUpdateDate,jdbcType=TIMESTAMP},
      LAST_UPDATED_BY = #{lastUpdatedBy,jdbcType=DECIMAL},
      LAST_UPDATED_BY_NAME = #{lastUpdatedByName,jdbcType=VARCHAR},
      ATTRIBUTE_CATEGORY = #{attributeCategory,jdbcType=VARCHAR},
      ATTRIBUTE1 = #{attribute1,jdbcType=VARCHAR},
      ATTRIBUTE2 = #{attribute2,jdbcType=VARCHAR},
      ATTRIBUTE3 = #{attribute3,jdbcType=VARCHAR},
      ATTRIBUTE4 = #{attribute4,jdbcType=VARCHAR},
      ATTRIBUTE5 = #{attribute5,jdbcType=VARCHAR},
      SUBMITTER_MODIFY = #{submitterModify,jdbcType=VARCHAR},
      DIRECT_LEADER = #{directLeader,jdbcType=VARCHAR},
      RELATE_APPROVER = #{relateApprover,jdbcType=VARCHAR},
      DICISION_MAKER = #{dicisionMaker,jdbcType=VARCHAR}
    where WF_SUBMIT_ID = #{wfSubmitId,jdbcType=DECIMAL}
  </update>
  <select id="selectByPrimaryKey" parameterType="java.lang.Short" resultMap="BaseResultMap">
    select WF_SUBMIT_ID, PROCESS_NAME, BUSINESS_KEY, INSTANCE_ID, APPROVE_STATUS, CURRENT_NODES, 
    CURRENT_APPROVERS, BUS_DATA, CREATION_DATE, CREATED_BY, CREATED_BY_NAME, LAST_UPDATE_DATE, 
    LAST_UPDATED_BY, LAST_UPDATED_BY_NAME, ATTRIBUTE_CATEGORY, ATTRIBUTE1, ATTRIBUTE2, 
    ATTRIBUTE3, ATTRIBUTE4, ATTRIBUTE5, SUBMITTER_MODIFY, DIRECT_LEADER, RELATE_APPROVER, 
    DICISION_MAKER
    from SMS_WF_SUBMIT_REC_T
    where WF_SUBMIT_ID = #{wfSubmitId,jdbcType=DECIMAL}
  </select>
  <select id="selectAll" resultMap="BaseResultMap">
    select WF_SUBMIT_ID, PROCESS_NAME, BUSINESS_KEY, INSTANCE_ID, APPROVE_STATUS, CURRENT_NODES, 
    CURRENT_APPROVERS, BUS_DATA, CREATION_DATE, CREATED_BY, CREATED_BY_NAME, LAST_UPDATE_DATE, 
    LAST_UPDATED_BY, LAST_UPDATED_BY_NAME, ATTRIBUTE_CATEGORY, ATTRIBUTE1, ATTRIBUTE2, 
    ATTRIBUTE3, ATTRIBUTE4, ATTRIBUTE5, SUBMITTER_MODIFY, DIRECT_LEADER, RELATE_APPROVER, 
    DICISION_MAKER
    from SMS_WF_SUBMIT_REC_T
  </select>
  <resultMap id="BaseResultMap" type="model.SubmitRecBean">
    <id column="WF_SUBMIT_ID" jdbcType="DECIMAL" property="wfSubmitId" />
    <result column="PROCESS_NAME" jdbcType="VARCHAR" property="processName" />
    <result column="BUSINESS_KEY" jdbcType="VARCHAR" property="businessKey" />
    <result column="INSTANCE_ID" jdbcType="VARCHAR" property="instanceId" />
    <result column="APPROVE_STATUS" jdbcType="VARCHAR" property="approveStatus" />
    <result column="CURRENT_NODES" jdbcType="VARCHAR" property="currentNodes" />
    <result column="CURRENT_APPROVERS" jdbcType="VARCHAR" property="currentApprovers" />
    <result column="BUS_DATA" jdbcType="VARCHAR" property="busData" />
    <result column="CREATION_DATE" jdbcType="TIMESTAMP" property="creationDate" />
    <result column="CREATED_BY" jdbcType="DECIMAL" property="createdBy" />
    <result column="CREATED_BY_NAME" jdbcType="VARCHAR" property="createdByName" />
    <result column="LAST_UPDATE_DATE" jdbcType="TIMESTAMP" property="lastUpdateDate" />
    <result column="LAST_UPDATED_BY" jdbcType="DECIMAL" property="lastUpdatedBy" />
    <result column="LAST_UPDATED_BY_NAME" jdbcType="VARCHAR" property="lastUpdatedByName" />
    <result column="ATTRIBUTE_CATEGORY" jdbcType="VARCHAR" property="attributeCategory" />
    <result column="ATTRIBUTE1" jdbcType="VARCHAR" property="attribute1" />
    <result column="ATTRIBUTE2" jdbcType="VARCHAR" property="attribute2" />
    <result column="ATTRIBUTE3" jdbcType="VARCHAR" property="attribute3" />
    <result column="ATTRIBUTE4" jdbcType="VARCHAR" property="attribute4" />
    <result column="ATTRIBUTE5" jdbcType="VARCHAR" property="attribute5" />
    <result column="SUBMITTER_MODIFY" jdbcType="VARCHAR" property="submitterModify" />
    <result column="DIRECT_LEADER" jdbcType="VARCHAR" property="directLeader" />
    <result column="RELATE_APPROVER" jdbcType="VARCHAR" property="relateApprover" />
    <result column="DICISION_MAKER" jdbcType="VARCHAR" property="dicisionMaker" />
  </resultMap>
  <delete id="deleteByPrimaryKey" parameterType="java.lang.Short">
    delete from SMS_WF_SUBMIT_REC_T
    where WF_SUBMIT_ID = #{wfSubmitId,jdbcType=DECIMAL}
  </delete>
  <insert id="insert" parameterType="model.SubmitRecBean">
    <selectKey keyProperty="wfSubmitId" order="BEFORE" resultType="java.lang.Short">
      oracle
    </selectKey>
    insert into SMS_WF_SUBMIT_REC_T (WF_SUBMIT_ID, PROCESS_NAME, BUSINESS_KEY, 
      INSTANCE_ID, APPROVE_STATUS, CURRENT_NODES, 
      CURRENT_APPROVERS, BUS_DATA, CREATION_DATE, 
      CREATED_BY, CREATED_BY_NAME, LAST_UPDATE_DATE, 
      LAST_UPDATED_BY, LAST_UPDATED_BY_NAME, ATTRIBUTE_CATEGORY, 
      ATTRIBUTE1, ATTRIBUTE2, ATTRIBUTE3, 
      ATTRIBUTE4, ATTRIBUTE5, SUBMITTER_MODIFY, 
      DIRECT_LEADER, RELATE_APPROVER, DICISION_MAKER
      )
    values (#{wfSubmitId,jdbcType=DECIMAL}, #{processName,jdbcType=VARCHAR}, #{businessKey,jdbcType=VARCHAR}, 
      #{instanceId,jdbcType=VARCHAR}, #{approveStatus,jdbcType=VARCHAR}, #{currentNodes,jdbcType=VARCHAR}, 
      #{currentApprovers,jdbcType=VARCHAR}, #{busData,jdbcType=VARCHAR}, #{creationDate,jdbcType=TIMESTAMP}, 
      #{createdBy,jdbcType=DECIMAL}, #{createdByName,jdbcType=VARCHAR}, #{lastUpdateDate,jdbcType=TIMESTAMP}, 
      #{lastUpdatedBy,jdbcType=DECIMAL}, #{lastUpdatedByName,jdbcType=VARCHAR}, #{attributeCategory,jdbcType=VARCHAR}, 
      #{attribute1,jdbcType=VARCHAR}, #{attribute2,jdbcType=VARCHAR}, #{attribute3,jdbcType=VARCHAR}, 
      #{attribute4,jdbcType=VARCHAR}, #{attribute5,jdbcType=VARCHAR}, #{submitterModify,jdbcType=VARCHAR}, 
      #{directLeader,jdbcType=VARCHAR}, #{relateApprover,jdbcType=VARCHAR}, #{dicisionMaker,jdbcType=VARCHAR}
      )
  </insert>
  <update id="updateByPrimaryKey" parameterType="model.SubmitRecBean">
    update SMS_WF_SUBMIT_REC_T
    set PROCESS_NAME = #{processName,jdbcType=VARCHAR},
      BUSINESS_KEY = #{businessKey,jdbcType=VARCHAR},
      INSTANCE_ID = #{instanceId,jdbcType=VARCHAR},
      APPROVE_STATUS = #{approveStatus,jdbcType=VARCHAR},
      CURRENT_NODES = #{currentNodes,jdbcType=VARCHAR},
      CURRENT_APPROVERS = #{currentApprovers,jdbcType=VARCHAR},
      BUS_DATA = #{busData,jdbcType=VARCHAR},
      CREATION_DATE = #{creationDate,jdbcType=TIMESTAMP},
      CREATED_BY = #{createdBy,jdbcType=DECIMAL},
      CREATED_BY_NAME = #{createdByName,jdbcType=VARCHAR},
      LAST_UPDATE_DATE = #{lastUpdateDate,jdbcType=TIMESTAMP},
      LAST_UPDATED_BY = #{lastUpdatedBy,jdbcType=DECIMAL},
      LAST_UPDATED_BY_NAME = #{lastUpdatedByName,jdbcType=VARCHAR},
      ATTRIBUTE_CATEGORY = #{attributeCategory,jdbcType=VARCHAR},
      ATTRIBUTE1 = #{attribute1,jdbcType=VARCHAR},
      ATTRIBUTE2 = #{attribute2,jdbcType=VARCHAR},
      ATTRIBUTE3 = #{attribute3,jdbcType=VARCHAR},
      ATTRIBUTE4 = #{attribute4,jdbcType=VARCHAR},
      ATTRIBUTE5 = #{attribute5,jdbcType=VARCHAR},
      SUBMITTER_MODIFY = #{submitterModify,jdbcType=VARCHAR},
      DIRECT_LEADER = #{directLeader,jdbcType=VARCHAR},
      RELATE_APPROVER = #{relateApprover,jdbcType=VARCHAR},
      DICISION_MAKER = #{dicisionMaker,jdbcType=VARCHAR}
    where WF_SUBMIT_ID = #{wfSubmitId,jdbcType=DECIMAL}
  </update>
  <select id="selectByPrimaryKey" parameterType="java.lang.Short" resultMap="BaseResultMap">
    select WF_SUBMIT_ID, PROCESS_NAME, BUSINESS_KEY, INSTANCE_ID, APPROVE_STATUS, CURRENT_NODES, 
    CURRENT_APPROVERS, BUS_DATA, CREATION_DATE, CREATED_BY, CREATED_BY_NAME, LAST_UPDATE_DATE, 
    LAST_UPDATED_BY, LAST_UPDATED_BY_NAME, ATTRIBUTE_CATEGORY, ATTRIBUTE1, ATTRIBUTE2, 
    ATTRIBUTE3, ATTRIBUTE4, ATTRIBUTE5, SUBMITTER_MODIFY, DIRECT_LEADER, RELATE_APPROVER, 
    DICISION_MAKER
    from SMS_WF_SUBMIT_REC_T
    where WF_SUBMIT_ID = #{wfSubmitId,jdbcType=DECIMAL}
  </select>
  <select id="selectAll" resultMap="BaseResultMap">
    select WF_SUBMIT_ID, PROCESS_NAME, BUSINESS_KEY, INSTANCE_ID, APPROVE_STATUS, CURRENT_NODES, 
    CURRENT_APPROVERS, BUS_DATA, CREATION_DATE, CREATED_BY, CREATED_BY_NAME, LAST_UPDATE_DATE, 
    LAST_UPDATED_BY, LAST_UPDATED_BY_NAME, ATTRIBUTE_CATEGORY, ATTRIBUTE1, ATTRIBUTE2, 
    ATTRIBUTE3, ATTRIBUTE4, ATTRIBUTE5, SUBMITTER_MODIFY, DIRECT_LEADER, RELATE_APPROVER, 
    DICISION_MAKER
    from SMS_WF_SUBMIT_REC_T
  </select>
  <resultMap id="BaseResultMap" type="model.SubmitRecBean">
    <id column="WF_SUBMIT_ID" jdbcType="DECIMAL" property="wfSubmitId" />
    <result column="PROCESS_NAME" jdbcType="VARCHAR" property="processName" />
    <result column="BUSINESS_KEY" jdbcType="VARCHAR" property="businessKey" />
    <result column="INSTANCE_ID" jdbcType="VARCHAR" property="instanceId" />
    <result column="APPROVE_STATUS" jdbcType="VARCHAR" property="approveStatus" />
    <result column="CURRENT_NODES" jdbcType="VARCHAR" property="currentNodes" />
    <result column="CURRENT_APPROVERS" jdbcType="VARCHAR" property="currentApprovers" />
    <result column="BUS_DATA" jdbcType="VARCHAR" property="busData" />
    <result column="CREATION_DATE" jdbcType="TIMESTAMP" property="creationDate" />
    <result column="CREATED_BY" jdbcType="DECIMAL" property="createdBy" />
    <result column="CREATED_BY_NAME" jdbcType="VARCHAR" property="createdByName" />
    <result column="LAST_UPDATE_DATE" jdbcType="TIMESTAMP" property="lastUpdateDate" />
    <result column="LAST_UPDATED_BY" jdbcType="DECIMAL" property="lastUpdatedBy" />
    <result column="LAST_UPDATED_BY_NAME" jdbcType="VARCHAR" property="lastUpdatedByName" />
    <result column="ATTRIBUTE_CATEGORY" jdbcType="VARCHAR" property="attributeCategory" />
    <result column="ATTRIBUTE1" jdbcType="VARCHAR" property="attribute1" />
    <result column="ATTRIBUTE2" jdbcType="VARCHAR" property="attribute2" />
    <result column="ATTRIBUTE3" jdbcType="VARCHAR" property="attribute3" />
    <result column="ATTRIBUTE4" jdbcType="VARCHAR" property="attribute4" />
    <result column="ATTRIBUTE5" jdbcType="VARCHAR" property="attribute5" />
    <result column="SUBMITTER_MODIFY" jdbcType="VARCHAR" property="submitterModify" />
    <result column="DIRECT_LEADER" jdbcType="VARCHAR" property="directLeader" />
    <result column="RELATE_APPROVER" jdbcType="VARCHAR" property="relateApprover" />
    <result column="DICISION_MAKER" jdbcType="VARCHAR" property="dicisionMaker" />
  </resultMap>
  <delete id="deleteByPrimaryKey" parameterType="java.lang.Short">
    delete from SMS_WF_SUBMIT_REC_T
    where WF_SUBMIT_ID = #{wfSubmitId,jdbcType=DECIMAL}
  </delete>
  <insert id="insert" parameterType="model.SubmitRecBean">
    <selectKey keyProperty="wfSubmitId" order="BEFORE" resultType="java.lang.Short">
      oracle
    </selectKey>
    insert into SMS_WF_SUBMIT_REC_T (WF_SUBMIT_ID, PROCESS_NAME, BUSINESS_KEY, 
      INSTANCE_ID, APPROVE_STATUS, CURRENT_NODES, 
      CURRENT_APPROVERS, BUS_DATA, CREATION_DATE, 
      CREATED_BY, CREATED_BY_NAME, LAST_UPDATE_DATE, 
      LAST_UPDATED_BY, LAST_UPDATED_BY_NAME, ATTRIBUTE_CATEGORY, 
      ATTRIBUTE1, ATTRIBUTE2, ATTRIBUTE3, 
      ATTRIBUTE4, ATTRIBUTE5, SUBMITTER_MODIFY, 
      DIRECT_LEADER, RELATE_APPROVER, DICISION_MAKER
      )
    values (#{wfSubmitId,jdbcType=DECIMAL}, #{processName,jdbcType=VARCHAR}, #{businessKey,jdbcType=VARCHAR}, 
      #{instanceId,jdbcType=VARCHAR}, #{approveStatus,jdbcType=VARCHAR}, #{currentNodes,jdbcType=VARCHAR}, 
      #{currentApprovers,jdbcType=VARCHAR}, #{busData,jdbcType=VARCHAR}, #{creationDate,jdbcType=TIMESTAMP}, 
      #{createdBy,jdbcType=DECIMAL}, #{createdByName,jdbcType=VARCHAR}, #{lastUpdateDate,jdbcType=TIMESTAMP}, 
      #{lastUpdatedBy,jdbcType=DECIMAL}, #{lastUpdatedByName,jdbcType=VARCHAR}, #{attributeCategory,jdbcType=VARCHAR}, 
      #{attribute1,jdbcType=VARCHAR}, #{attribute2,jdbcType=VARCHAR}, #{attribute3,jdbcType=VARCHAR}, 
      #{attribute4,jdbcType=VARCHAR}, #{attribute5,jdbcType=VARCHAR}, #{submitterModify,jdbcType=VARCHAR}, 
      #{directLeader,jdbcType=VARCHAR}, #{relateApprover,jdbcType=VARCHAR}, #{dicisionMaker,jdbcType=VARCHAR}
      )
  </insert>
  <update id="updateByPrimaryKey" parameterType="model.SubmitRecBean">
    update SMS_WF_SUBMIT_REC_T
    set PROCESS_NAME = #{processName,jdbcType=VARCHAR},
      BUSINESS_KEY = #{businessKey,jdbcType=VARCHAR},
      INSTANCE_ID = #{instanceId,jdbcType=VARCHAR},
      APPROVE_STATUS = #{approveStatus,jdbcType=VARCHAR},
      CURRENT_NODES = #{currentNodes,jdbcType=VARCHAR},
      CURRENT_APPROVERS = #{currentApprovers,jdbcType=VARCHAR},
      BUS_DATA = #{busData,jdbcType=VARCHAR},
      CREATION_DATE = #{creationDate,jdbcType=TIMESTAMP},
      CREATED_BY = #{createdBy,jdbcType=DECIMAL},
      CREATED_BY_NAME = #{createdByName,jdbcType=VARCHAR},
      LAST_UPDATE_DATE = #{lastUpdateDate,jdbcType=TIMESTAMP},
      LAST_UPDATED_BY = #{lastUpdatedBy,jdbcType=DECIMAL},
      LAST_UPDATED_BY_NAME = #{lastUpdatedByName,jdbcType=VARCHAR},
      ATTRIBUTE_CATEGORY = #{attributeCategory,jdbcType=VARCHAR},
      ATTRIBUTE1 = #{attribute1,jdbcType=VARCHAR},
      ATTRIBUTE2 = #{attribute2,jdbcType=VARCHAR},
      ATTRIBUTE3 = #{attribute3,jdbcType=VARCHAR},
      ATTRIBUTE4 = #{attribute4,jdbcType=VARCHAR},
      ATTRIBUTE5 = #{attribute5,jdbcType=VARCHAR},
      SUBMITTER_MODIFY = #{submitterModify,jdbcType=VARCHAR},
      DIRECT_LEADER = #{directLeader,jdbcType=VARCHAR},
      RELATE_APPROVER = #{relateApprover,jdbcType=VARCHAR},
      DICISION_MAKER = #{dicisionMaker,jdbcType=VARCHAR}
    where WF_SUBMIT_ID = #{wfSubmitId,jdbcType=DECIMAL}
  </update>
  <select id="selectByPrimaryKey" parameterType="java.lang.Short" resultMap="BaseResultMap">
    select WF_SUBMIT_ID, PROCESS_NAME, BUSINESS_KEY, INSTANCE_ID, APPROVE_STATUS, CURRENT_NODES, 
    CURRENT_APPROVERS, BUS_DATA, CREATION_DATE, CREATED_BY, CREATED_BY_NAME, LAST_UPDATE_DATE, 
    LAST_UPDATED_BY, LAST_UPDATED_BY_NAME, ATTRIBUTE_CATEGORY, ATTRIBUTE1, ATTRIBUTE2, 
    ATTRIBUTE3, ATTRIBUTE4, ATTRIBUTE5, SUBMITTER_MODIFY, DIRECT_LEADER, RELATE_APPROVER, 
    DICISION_MAKER
    from SMS_WF_SUBMIT_REC_T
    where WF_SUBMIT_ID = #{wfSubmitId,jdbcType=DECIMAL}
  </select>
  <select id="selectAll" resultMap="BaseResultMap">
    select WF_SUBMIT_ID, PROCESS_NAME, BUSINESS_KEY, INSTANCE_ID, APPROVE_STATUS, CURRENT_NODES, 
    CURRENT_APPROVERS, BUS_DATA, CREATION_DATE, CREATED_BY, CREATED_BY_NAME, LAST_UPDATE_DATE, 
    LAST_UPDATED_BY, LAST_UPDATED_BY_NAME, ATTRIBUTE_CATEGORY, ATTRIBUTE1, ATTRIBUTE2, 
    ATTRIBUTE3, ATTRIBUTE4, ATTRIBUTE5, SUBMITTER_MODIFY, DIRECT_LEADER, RELATE_APPROVER, 
    DICISION_MAKER
    from SMS_WF_SUBMIT_REC_T
  </select>
</mapper>

总结 

附件为demo,下载链接:https://github.com/porryli/mybatis-generator-demo.git,优快云:https://download.youkuaiyun.com/download/lizhangyong1989/10268065

 

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值