使用MyBatis_Generator生成Dto、Dao、Mapping

【有奖征文】Bluemix云上实践征集喽~     <a href=""http://bss.csdn.net/m/product/python_creative" target="_blank"> Python 创意编程活动     CSDN日报20170513 ——《腾讯2017校招实习生面试总结》

MyBatis学习4---使用MyBatis_Generator生成Dto、Dao、Mapping

标签: MyBatisJava一路博客
120137人阅读 评论(22) 收藏 举报
本文章已收录于:
分类:

由于MyBatis属于一种半自动的ORM框架,所以主要的工作将是书写Mapping映射文件,但是由于手写映射文件很容易出错,所以查资料发现有现成的工具可以自动生成底层模型类、Dao接口类甚至Mapping映射文件。

一、建立表结构

CREATE TABLE `user` (
  `id` varchar(50) NOT NULL,
  `username` varchar(18) CHARACTER SET utf8 COLLATE utf8_bin DEFAULT NULL,
  `password` varchar(18) DEFAULT NULL,
  `email` varchar(50) DEFAULT NULL,
  `name` varchar(18) DEFAULT NULL,
  `sex` varchar(2) DEFAULT NULL,
  `birthday` varchar(50) DEFAULT NULL,
  `address` varchar(500) DEFAULT NULL,
  `tel` varchar(18) DEFAULT NULL,
  `qq` varchar(18) DEFAULT NULL,
  `image` varchar(50) DEFAULT NULL,
  `sfjh` varchar(1) DEFAULT NULL,
  `sfzx` varchar(1) DEFAULT NULL,
  `sfhf` varchar(1) DEFAULT NULL,
  `sfpl` varchar(1) DEFAULT NULL,
  `sffx` varchar(1) DEFAULT NULL,
  PRIMARY KEY (`id`)
) ENGINE=InnoDB DEFAULT CHARSET=utf-8;

二、下载mybatis-generator-core

进入:http://code.google.com/p/mybatis/

选择Downloads,再选择MyBatis Generator Tool下载即可。

三、生成配置文件

新建一个空的XML配置文件,名称可以随便取,这里以generatorConfig.xml为名。最好将这个文件放在下载后的lib目录中,如图:


其中MySQL的驱动可以随便放在非中文路径的地方,这里为了方便就放在lib目录下。

自动生成最重要的就是配置文件的书写,现在就开始介绍generatorConfig.xml这个文件的具体内容:

  1. <?xml version="1.0" encoding="UTF-8"?>  
  2. <!DOCTYPE generatorConfiguration  
  3.   PUBLIC "-//mybatis.org//DTD MyBatis Generator Configuration 1.0//EN"  
  4.   "http://mybatis.org/dtd/mybatis-generator-config_1_0.dtd">  
  5. <generatorConfiguration>  
  6. <!-- 数据库驱动-->  
  7.     <classPathEntry  location="mysql-connector-java-5.0.6-bin.jar"/>  
  8.     <context id="DB2Tables"  targetRuntime="MyBatis3">  
  9.         <commentGenerator>  
  10.             <property name="suppressDate" value="true"/>  
  11.             <!-- 是否去除自动生成的注释 true:是 : false:否 -->  
  12.             <property name="suppressAllComments" value="true"/>  
  13.         </commentGenerator>  
  14.         <!--数据库链接URL,用户名、密码 -->  
  15.         <jdbcConnection driverClass="com.mysql.jdbc.Driver" connectionURL="jdbc:mysql://localhost/test" userId="test" password="test">  
  16.         </jdbcConnection>  
  17.         <javaTypeResolver>  
  18.             <property name="forceBigDecimals" value="false"/>  
  19.         </javaTypeResolver>  
  20.         <!-- 生成模型的包名和位置-->  
  21.         <javaModelGenerator targetPackage="test.model" targetProject="src">  
  22.             <property name="enableSubPackages" value="true"/>  
  23.             <property name="trimStrings" value="true"/>  
  24.         </javaModelGenerator>  
  25.         <!-- 生成映射文件的包名和位置-->  
  26.         <sqlMapGenerator targetPackage="test.mapping" targetProject="src">  
  27.             <property name="enableSubPackages" value="true"/>  
  28.         </sqlMapGenerator>  
  29.         <!-- 生成DAO的包名和位置-->  
  30.         <javaClientGenerator type="XMLMAPPER" targetPackage="test.dao" targetProject="src">  
  31.             <property name="enableSubPackages" value="true"/>  
  32.         </javaClientGenerator>  
  33.         <!-- 要生成哪些表-->  
  34.         <table tableName="about" domainObjectName="AboutDto" enableCountByExample="false" enableUpdateByExample="false" enableDeleteByExample="false" enableSelectByExample="false" selectByExampleQueryId="false"></table>  
  35.         <table tableName="user" domainObjectName="UserDto" enableCountByExample="false" enableUpdateByExample="false" enableDeleteByExample="false" enableSelectByExample="false" selectByExampleQueryId="false"></table>  
  36.         <table tableName="syslogs" domainObjectName="SyslogsDto" enableCountByExample="false" enableUpdateByExample="false" enableDeleteByExample="false" enableSelectByExample="false" selectByExampleQueryId="false"></table>  
  37.     </context>  
  38. </generatorConfiguration>  
<?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>
<!-- 数据库驱动-->
	<classPathEntry	location="mysql-connector-java-5.0.6-bin.jar"/>
	<context id="DB2Tables"	targetRuntime="MyBatis3">
		<commentGenerator>
			<property name="suppressDate" value="true"/>
			<!-- 是否去除自动生成的注释 true:是 : false:否 -->
			<property name="suppressAllComments" value="true"/>
		</commentGenerator>
		<!--数据库链接URL,用户名、密码 -->
		<jdbcConnection driverClass="com.mysql.jdbc.Driver" connectionURL="jdbc:mysql://localhost/test" userId="test" password="test">
		</jdbcConnection>
		<javaTypeResolver>
			<property name="forceBigDecimals" value="false"/>
		</javaTypeResolver>
		<!-- 生成模型的包名和位置-->
		<javaModelGenerator targetPackage="test.model" targetProject="src">
			<property name="enableSubPackages" value="true"/>
			<property name="trimStrings" value="true"/>
		</javaModelGenerator>
		<!-- 生成映射文件的包名和位置-->
		<sqlMapGenerator targetPackage="test.mapping" targetProject="src">
			<property name="enableSubPackages" value="true"/>
		</sqlMapGenerator>
		<!-- 生成DAO的包名和位置-->
		<javaClientGenerator type="XMLMAPPER" targetPackage="test.dao" targetProject="src">
			<property name="enableSubPackages" value="true"/>
		</javaClientGenerator>
		<!-- 要生成哪些表-->
		<table tableName="about" domainObjectName="AboutDto" enableCountByExample="false" enableUpdateByExample="false" enableDeleteByExample="false" enableSelectByExample="false" selectByExampleQueryId="false"></table>
		<table tableName="user" domainObjectName="UserDto" enableCountByExample="false" enableUpdateByExample="false" enableDeleteByExample="false" enableSelectByExample="false" selectByExampleQueryId="false"></table>
		<table tableName="syslogs" domainObjectName="SyslogsDto" enableCountByExample="false" enableUpdateByExample="false" enableDeleteByExample="false" enableSelectByExample="false" selectByExampleQueryId="false"></table>
	</context>
</generatorConfiguration>

1、其中需要注意的有数据库驱动、数据库URL、用户名、密码、生成模型的包名和位置、生成映射文件的包名和位置、生成DAO的包名和位置以及最后需要生成的表名和对应的类名。


四、运行

需要通过CMD命令行方式来运行,首先可以先准备一个运行的脚本,这里使用的脚本是:Java -jar mybatis-generator-core-1.3.2.jar -configfile generatorConfig.xml -overwrite

需要注意的是:mybatis-generator-core-1.3.2.jar为下载的对应版本的jar,generatorConfig.xml 为配置文件名,如果不为这个可以在这里进行修改。

启动cmd进入到“F:\soft\mybatis-generator-core-1.3.2\lib”这个目录下,如图:


生成成功后进到src目录下,可以看到已经生成了对应的model、dao、mapping,如图:


下面可以看看生成后的UserMapper.xml

  1. <?xml version="1.0" encoding="UTF-8" ?>  
  2. <!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd" >  
  3. <mapper namespace="test.dao.UserDtoMapper" >  
  4.   <resultMap id="BaseResultMap" type="test.model.UserDto" >  
  5.     <id column="id" property="id" jdbcType="VARCHAR" />  
  6.     <result column="username" property="username" jdbcType="VARCHAR" />  
  7.     <result column="password" property="password" jdbcType="VARCHAR" />  
  8.     <result column="email" property="email" jdbcType="VARCHAR" />  
  9.     <result column="name" property="name" jdbcType="VARCHAR" />  
  10.     <result column="sex" property="sex" jdbcType="VARCHAR" />  
  11.     <result column="birthday" property="birthday" jdbcType="VARCHAR" />  
  12.     <result column="address" property="address" jdbcType="VARCHAR" />  
  13.     <result column="tel" property="tel" jdbcType="VARCHAR" />  
  14.     <result column="qq" property="qq" jdbcType="VARCHAR" />  
  15.     <result column="image" property="image" jdbcType="VARCHAR" />  
  16.     <result column="sfjh" property="sfjh" jdbcType="VARCHAR" />  
  17.     <result column="sfzx" property="sfzx" jdbcType="VARCHAR" />  
  18.     <result column="sfhf" property="sfhf" jdbcType="VARCHAR" />  
  19.     <result column="sfpl" property="sfpl" jdbcType="VARCHAR" />  
  20.     <result column="sffx" property="sffx" jdbcType="VARCHAR" />  
  21.   </resultMap>  
  22.   <sql id="Base_Column_List" >  
  23.     id, username, password, email, name, sex, birthday, address, tel, qq, image, sfjh,   
  24.     sfzx, sfhf, sfpl, sffx  
  25.   </sql>  
  26.   <select id="selectByPrimaryKey" resultMap="BaseResultMap" parameterType="java.lang.String" >  
  27.     select   
  28.     <include refid="Base_Column_List" />  
  29.     from user  
  30.     where id = #{id,jdbcType=VARCHAR}  
  31.   </select>  
  32.   <delete id="deleteByPrimaryKey" parameterType="java.lang.String" >  
  33.     delete from user  
  34.     where id = #{id,jdbcType=VARCHAR}  
  35.   </delete>  
  36.   <insert id="insert" parameterType="test.model.UserDto" >  
  37.     insert into user (id, username, password,   
  38.       email, name, sex, birthday,   
  39.       address, tel, qq, image,   
  40.       sfjh, sfzx, sfhf, sfpl,   
  41.       sffx)  
  42.     values (#{id,jdbcType=VARCHAR}, #{username,jdbcType=VARCHAR}, #{password,jdbcType=VARCHAR},   
  43.       #{email,jdbcType=VARCHAR}, #{name,jdbcType=VARCHAR}, #{sex,jdbcType=VARCHAR}, #{birthday,jdbcType=VARCHAR},   
  44.       #{address,jdbcType=VARCHAR}, #{tel,jdbcType=VARCHAR}, #{qq,jdbcType=VARCHAR}, #{image,jdbcType=VARCHAR},   
  45.       #{sfjh,jdbcType=VARCHAR}, #{sfzx,jdbcType=VARCHAR}, #{sfhf,jdbcType=VARCHAR}, #{sfpl,jdbcType=VARCHAR},   
  46.       #{sffx,jdbcType=VARCHAR})  
  47.   </insert>  
  48.   <insert id="insertSelective" parameterType="test.model.UserDto" >  
  49.     insert into user  
  50.     <trim prefix="(" suffix=")" suffixOverrides="," >  
  51.       <if test="id != null" >  
  52.         id,  
  53.       </if>  
  54.       <if test="username != null" >  
  55.         username,  
  56.       </if>  
  57.       <if test="password != null" >  
  58.         password,  
  59.       </if>  
  60.       <if test="email != null" >  
  61.         email,  
  62.       </if>  
  63.       <if test="name != null" >  
  64.         name,  
  65.       </if>  
  66.       <if test="sex != null" >  
  67.         sex,  
  68.       </if>  
  69.       <if test="birthday != null" >  
  70.         birthday,  
  71.       </if>  
  72.       <if test="address != null" >  
  73.         address,  
  74.       </if>  
  75.       <if test="tel != null" >  
  76.         tel,  
  77.       </if>  
  78.       <if test="qq != null" >  
  79.         qq,  
  80.       </if>  
  81.       <if test="image != null" >  
  82.         image,  
  83.       </if>  
  84.       <if test="sfjh != null" >  
  85.         sfjh,  
  86.       </if>  
  87.       <if test="sfzx != null" >  
  88.         sfzx,  
  89.       </if>  
  90.       <if test="sfhf != null" >  
  91.         sfhf,  
  92.       </if>  
  93.       <if test="sfpl != null" >  
  94.         sfpl,  
  95.       </if>  
  96.       <if test="sffx != null" >  
  97.         sffx,  
  98.       </if>  
  99.     </trim>  
  100.     <trim prefix="values (" suffix=")" suffixOverrides="," >  
  101.       <if test="id != null" >  
  102.         #{id,jdbcType=VARCHAR},  
  103.       </if>  
  104.       <if test="username != null" >  
  105.         #{username,jdbcType=VARCHAR},  
  106.       </if>  
  107.       <if test="password != null" >  
  108.         #{password,jdbcType=VARCHAR},  
  109.       </if>  
  110.       <if test="email != null" >  
  111.         #{email,jdbcType=VARCHAR},  
  112.       </if>  
  113.       <if test="name != null" >  
  114.         #{name,jdbcType=VARCHAR},  
  115.       </if>  
  116.       <if test="sex != null" >  
  117.         #{sex,jdbcType=VARCHAR},  
  118.       </if>  
  119.       <if test="birthday != null" >  
  120.         #{birthday,jdbcType=VARCHAR},  
  121.       </if>  
  122.       <if test="address != null" >  
  123.         #{address,jdbcType=VARCHAR},  
  124.       </if>  
  125.       <if test="tel != null" >  
  126.         #{tel,jdbcType=VARCHAR},  
  127.       </if>  
  128.       <if test="qq != null" >  
  129.         #{qq,jdbcType=VARCHAR},  
  130.       </if>  
  131.       <if test="image != null" >  
  132.         #{image,jdbcType=VARCHAR},  
  133.       </if>  
  134.       <if test="sfjh != null" >  
  135.         #{sfjh,jdbcType=VARCHAR},  
  136.       </if>  
  137.       <if test="sfzx != null" >  
  138.         #{sfzx,jdbcType=VARCHAR},  
  139.       </if>  
  140.       <if test="sfhf != null" >  
  141.         #{sfhf,jdbcType=VARCHAR},  
  142.       </if>  
  143.       <if test="sfpl != null" >  
  144.         #{sfpl,jdbcType=VARCHAR},  
  145.       </if>  
  146.       <if test="sffx != null" >  
  147.         #{sffx,jdbcType=VARCHAR},  
  148.       </if>  
  149.     </trim>  
  150.   </insert>  
  151.   <update id="updateByPrimaryKeySelective" parameterType="test.model.UserDto" >  
  152.     update user  
  153.     <set >  
  154.       <if test="username != null" >  
  155.         username = #{username,jdbcType=VARCHAR},  
  156.       </if>  
  157.       <if test="password != null" >  
  158.         password = #{password,jdbcType=VARCHAR},  
  159.       </if>  
  160.       <if test="email != null" >  
  161.         email = #{email,jdbcType=VARCHAR},  
  162.       </if>  
  163.       <if test="name != null" >  
  164.         name = #{name,jdbcType=VARCHAR},  
  165.       </if>  
  166.       <if test="sex != null" >  
  167.         sex = #{sex,jdbcType=VARCHAR},  
  168.       </if>  
  169.       <if test="birthday != null" >  
  170.         birthday = #{birthday,jdbcType=VARCHAR},  
  171.       </if>  
  172.       <if test="address != null" >  
  173.         address = #{address,jdbcType=VARCHAR},  
  174.       </if>  
  175.       <if test="tel != null" >  
  176.         tel = #{tel,jdbcType=VARCHAR},  
  177.       </if>  
  178.       <if test="qq != null" >  
  179.         qq = #{qq,jdbcType=VARCHAR},  
  180.       </if>  
  181.       <if test="image != null" >  
  182.         image = #{image,jdbcType=VARCHAR},  
  183.       </if>  
  184.       <if test="sfjh != null" >  
  185.         sfjh = #{sfjh,jdbcType=VARCHAR},  
  186.       </if>  
  187.       <if test="sfzx != null" >  
  188.         sfzx = #{sfzx,jdbcType=VARCHAR},  
  189.       </if>  
  190.       <if test="sfhf != null" >  
  191.         sfhf = #{sfhf,jdbcType=VARCHAR},  
  192.       </if>  
  193.       <if test="sfpl != null" >  
  194.         sfpl = #{sfpl,jdbcType=VARCHAR},  
  195.       </if>  
  196.       <if test="sffx != null" >  
  197.         sffx = #{sffx,jdbcType=VARCHAR},  
  198.       </if>  
  199.     </set>  
  200.     where id = #{id,jdbcType=VARCHAR}  
  201.   </update>  
  202.   <update id="updateByPrimaryKey" parameterType="test.model.UserDto" >  
  203.     update user  
  204.     set username = #{username,jdbcType=VARCHAR},  
  205.       password = #{password,jdbcType=VARCHAR},  
  206.       email = #{email,jdbcType=VARCHAR},  
  207.       name = #{name,jdbcType=VARCHAR},  
  208.       sex = #{sex,jdbcType=VARCHAR},  
  209.       birthday = #{birthday,jdbcType=VARCHAR},  
  210.       address = #{address,jdbcType=VARCHAR},  
  211.       tel = #{tel,jdbcType=VARCHAR},  
  212.       qq = #{qq,jdbcType=VARCHAR},  
  213.       image = #{image,jdbcType=VARCHAR},  
  214.       sfjh = #{sfjh,jdbcType=VARCHAR},  
  215.       sfzx = #{sfzx,jdbcType=VARCHAR},  
  216.       sfhf = #{sfhf,jdbcType=VARCHAR},  
  217.       sfpl = #{sfpl,jdbcType=VARCHAR},  
  218.       sffx = #{sffx,jdbcType=VARCHAR}  
  219.     where id = #{id,jdbcType=VARCHAR}  
  220.   </update>  
  221. </mapper>  
<?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="test.dao.UserDtoMapper" >
  <resultMap id="BaseResultMap" type="test.model.UserDto" >
    <id column="id" property="id" jdbcType="VARCHAR" />
    <result column="username" property="username" jdbcType="VARCHAR" />
    <result column="password" property="password" jdbcType="VARCHAR" />
    <result column="email" property="email" jdbcType="VARCHAR" />
    <result column="name" property="name" jdbcType="VARCHAR" />
    <result column="sex" property="sex" jdbcType="VARCHAR" />
    <result column="birthday" property="birthday" jdbcType="VARCHAR" />
    <result column="address" property="address" jdbcType="VARCHAR" />
    <result column="tel" property="tel" jdbcType="VARCHAR" />
    <result column="qq" property="qq" jdbcType="VARCHAR" />
    <result column="image" property="image" jdbcType="VARCHAR" />
    <result column="sfjh" property="sfjh" jdbcType="VARCHAR" />
    <result column="sfzx" property="sfzx" jdbcType="VARCHAR" />
    <result column="sfhf" property="sfhf" jdbcType="VARCHAR" />
    <result column="sfpl" property="sfpl" jdbcType="VARCHAR" />
    <result column="sffx" property="sffx" jdbcType="VARCHAR" />
  </resultMap>
  <sql id="Base_Column_List" >
    id, username, password, email, name, sex, birthday, address, tel, qq, image, sfjh, 
    sfzx, sfhf, sfpl, sffx
  </sql>
  <select id="selectByPrimaryKey" resultMap="BaseResultMap" parameterType="java.lang.String" >
    select 
    <include refid="Base_Column_List" />
    from user
    where id = #{id,jdbcType=VARCHAR}
  </select>
  <delete id="deleteByPrimaryKey" parameterType="java.lang.String" >
    delete from user
    where id = #{id,jdbcType=VARCHAR}
  </delete>
  <insert id="insert" parameterType="test.model.UserDto" >
    insert into user (id, username, password, 
      email, name, sex, birthday, 
      address, tel, qq, image, 
      sfjh, sfzx, sfhf, sfpl, 
      sffx)
    values (#{id,jdbcType=VARCHAR}, #{username,jdbcType=VARCHAR}, #{password,jdbcType=VARCHAR}, 
      #{email,jdbcType=VARCHAR}, #{name,jdbcType=VARCHAR}, #{sex,jdbcType=VARCHAR}, #{birthday,jdbcType=VARCHAR}, 
      #{address,jdbcType=VARCHAR}, #{tel,jdbcType=VARCHAR}, #{qq,jdbcType=VARCHAR}, #{image,jdbcType=VARCHAR}, 
      #{sfjh,jdbcType=VARCHAR}, #{sfzx,jdbcType=VARCHAR}, #{sfhf,jdbcType=VARCHAR}, #{sfpl,jdbcType=VARCHAR}, 
      #{sffx,jdbcType=VARCHAR})
  </insert>
  <insert id="insertSelective" parameterType="test.model.UserDto" >
    insert into user
    <trim prefix="(" suffix=")" suffixOverrides="," >
      <if test="id != null" >
        id,
      </if>
      <if test="username != null" >
        username,
      </if>
      <if test="password != null" >
        password,
      </if>
      <if test="email != null" >
        email,
      </if>
      <if test="name != null" >
        name,
      </if>
      <if test="sex != null" >
        sex,
      </if>
      <if test="birthday != null" >
        birthday,
      </if>
      <if test="address != null" >
        address,
      </if>
      <if test="tel != null" >
        tel,
      </if>
      <if test="qq != null" >
        qq,
      </if>
      <if test="image != null" >
        image,
      </if>
      <if test="sfjh != null" >
        sfjh,
      </if>
      <if test="sfzx != null" >
        sfzx,
      </if>
      <if test="sfhf != null" >
        sfhf,
      </if>
      <if test="sfpl != null" >
        sfpl,
      </if>
      <if test="sffx != null" >
        sffx,
      </if>
    </trim>
    <trim prefix="values (" suffix=")" suffixOverrides="," >
      <if test="id != null" >
        #{id,jdbcType=VARCHAR},
      </if>
      <if test="username != null" >
        #{username,jdbcType=VARCHAR},
      </if>
      <if test="password != null" >
        #{password,jdbcType=VARCHAR},
      </if>
      <if test="email != null" >
        #{email,jdbcType=VARCHAR},
      </if>
      <if test="name != null" >
        #{name,jdbcType=VARCHAR},
      </if>
      <if test="sex != null" >
        #{sex,jdbcType=VARCHAR},
      </if>
      <if test="birthday != null" >
        #{birthday,jdbcType=VARCHAR},
      </if>
      <if test="address != null" >
        #{address,jdbcType=VARCHAR},
      </if>
      <if test="tel != null" >
        #{tel,jdbcType=VARCHAR},
      </if>
      <if test="qq != null" >
        #{qq,jdbcType=VARCHAR},
      </if>
      <if test="image != null" >
        #{image,jdbcType=VARCHAR},
      </if>
      <if test="sfjh != null" >
        #{sfjh,jdbcType=VARCHAR},
      </if>
      <if test="sfzx != null" >
        #{sfzx,jdbcType=VARCHAR},
      </if>
      <if test="sfhf != null" >
        #{sfhf,jdbcType=VARCHAR},
      </if>
      <if test="sfpl != null" >
        #{sfpl,jdbcType=VARCHAR},
      </if>
      <if test="sffx != null" >
        #{sffx,jdbcType=VARCHAR},
      </if>
    </trim>
  </insert>
  <update id="updateByPrimaryKeySelective" parameterType="test.model.UserDto" >
    update user
    <set >
      <if test="username != null" >
        username = #{username,jdbcType=VARCHAR},
      </if>
      <if test="password != null" >
        password = #{password,jdbcType=VARCHAR},
      </if>
      <if test="email != null" >
        email = #{email,jdbcType=VARCHAR},
      </if>
      <if test="name != null" >
        name = #{name,jdbcType=VARCHAR},
      </if>
      <if test="sex != null" >
        sex = #{sex,jdbcType=VARCHAR},
      </if>
      <if test="birthday != null" >
        birthday = #{birthday,jdbcType=VARCHAR},
      </if>
      <if test="address != null" >
        address = #{address,jdbcType=VARCHAR},
      </if>
      <if test="tel != null" >
        tel = #{tel,jdbcType=VARCHAR},
      </if>
      <if test="qq != null" >
        qq = #{qq,jdbcType=VARCHAR},
      </if>
      <if test="image != null" >
        image = #{image,jdbcType=VARCHAR},
      </if>
      <if test="sfjh != null" >
        sfjh = #{sfjh,jdbcType=VARCHAR},
      </if>
      <if test="sfzx != null" >
        sfzx = #{sfzx,jdbcType=VARCHAR},
      </if>
      <if test="sfhf != null" >
        sfhf = #{sfhf,jdbcType=VARCHAR},
      </if>
      <if test="sfpl != null" >
        sfpl = #{sfpl,jdbcType=VARCHAR},
      </if>
      <if test="sffx != null" >
        sffx = #{sffx,jdbcType=VARCHAR},
      </if>
    </set>
    where id = #{id,jdbcType=VARCHAR}
  </update>
  <update id="updateByPrimaryKey" parameterType="test.model.UserDto" >
    update user
    set username = #{username,jdbcType=VARCHAR},
      password = #{password,jdbcType=VARCHAR},
      email = #{email,jdbcType=VARCHAR},
      name = #{name,jdbcType=VARCHAR},
      sex = #{sex,jdbcType=VARCHAR},
      birthday = #{birthday,jdbcType=VARCHAR},
      address = #{address,jdbcType=VARCHAR},
      tel = #{tel,jdbcType=VARCHAR},
      qq = #{qq,jdbcType=VARCHAR},
      image = #{image,jdbcType=VARCHAR},
      sfjh = #{sfjh,jdbcType=VARCHAR},
      sfzx = #{sfzx,jdbcType=VARCHAR},
      sfhf = #{sfhf,jdbcType=VARCHAR},
      sfpl = #{sfpl,jdbcType=VARCHAR},
      sffx = #{sffx,jdbcType=VARCHAR}
    where id = #{id,jdbcType=VARCHAR}
  </update>
</mapper>

接下来就可以将这三个目录拷贝到对应项目的目录中,如果需要新增自己的方法可以修改dao类。

更多文章见:http://www.16boke.com/article/detail/108


14
1
 
 
我的同类文章

参考知识库

img
MySQL知识库

img
Java SE知识库

img
Java EE知识库

img
Java 知识库

更多资料请参考:
猜你在找
Mybatis入门到精通(备java基础,oracle,mysql,javaee必备)
微信公众平台深度开发Java版v2.0单品课程——mysql+mybatis+工具
JavaSE高级篇---(IO流+多线程+XML+Socket+swing)
java数据库连接技术JDBC
MyBatis 入门视频教程
关闭
查看评论
19楼 yqme 2016-11-27 14:22发表 [回复] [引用] [举报]
我下载下载的咋和你这不一样了
18楼 老哥__稳 2016-11-23 12:00发表 [回复] [引用] [举报]
可以,get了
17楼 roy2011a 2016-07-15 17:56发表 [回复] [引用] [举报]
16楼不厚道啊,分明是类砸场子的,jfx。。。
16楼 欧文不哭 2016-06-21 23:01发表 [回复] [引用] [举报]
本人使用JavaFX写了一个mybatis generator带界面的工具,非常方便使用,github网址是:https://github.com/astarring/mybatis-generator-gui 欢迎大家下载试用试用,有什么问题可以在github中提issue交流。
15楼 刘天 2016-05-16 17:12发表 [回复] [引用] [举报]
数据库不要端口吗?
Re: 一路博客博主 2016-05-20 09:51发表 [回复] [引用] [举报]
回复u011105859:欢迎关注一路博客,http://www.16boke.com,或者本站的新浪微博,http://weibo.com/putiman,会不定时的发布工作中遇到的问题,以及学习总结。
Re: 一路博客博主 2016-05-20 09:41发表 [回复] [引用] [举报]
回复u011105859:mysql默认3306端口,可以不用写
14楼 Run丶Boy 2016-05-13 10:17发表 [回复] [引用] [举报]
好东西!!
13楼 水田如雅 2016-04-09 16:45发表 [回复] [引用] [举报]
get
12楼 guile 2015-12-25 15:21发表 [回复] [引用] [举报]
有 mybatis generator 的 eclipse 插架,很好使。
11楼 小有秋声 2015-12-10 23:01发表 [回复] [引用] [举报]
比如我建了一个叫org_user的表,结果生成的时候会把数据库自带的同名表的字段也生成,查过资料说在tableName里面的表名前加用户名,可是我加了之后貌似像找不到表一样不生成任何东西,不知道楼主是否有运见过同样的问题?如有怎么解决的?
10楼 ly001002 2015-11-24 18:11发表 [回复] [引用] [举报]
  1. <a href='https://www.baidu.com'>百度一下你就知道</a>  
<a href='https://www.baidu.com'>百度一下你就知道</a>


有eclipse插件的
Re: pl在之心 2015-12-22 21:40发表 [回复] [引用] [举报]
回复lblily:多谢提醒
9楼 qq_32954033 2015-11-19 23:52发表 [回复] [引用] [举报]
您好,我想链接sql server数据库,请问如果操作?QQ:373978475,提前谢谢
8楼 小城风带香 2015-10-10 19:22发表 [回复] [引用] [举报]
很好哦
7楼 亮叔不会飞 2015-10-09 15:43发表 [回复] [引用] [举报]
不错,感谢。
6楼 西域榴莲 2015-08-21 13:45发表 [回复] [引用] [举报]
你好,我运行之后报错
cannot resolve classpath entry:mysql-connector-java-5.1.5-bin.jar
然后配置了classpath没有用
5楼 紫月er 2015-08-12 11:29发表 [回复] [引用] [举报]
很好,谢谢喽
4楼 darren中 2014-09-14 11:47发表 [回复] [引用] [举报]
http://darrenzhong.com/?p=84 这里有插件的详细使用和安装教程
3楼 tianhuan820 2014-08-11 11:45发表 [回复] [引用] [举报]
这个东西eclipse没有对应插件么
2楼 JimmyLincole 2014-07-17 11:40发表 [回复] [引用] [举报]
在itellij idea如何使用mybatis-generator工具呀?谢谢
1楼 blueman2012 2014-06-08 14:44发表 [回复] [引用] [举报]
你好,可以把你生成的工具压缩发给我吗?因为现在mybatis-generatore是用maven构建了,我没有maven的环境,弄起来比较麻烦。我的邮箱地址:qiujianf@163.com
发表评论
  • 用 户 名:
  • fish9670
  •   
* 以上用户言论只代表其个人观点,不代表CSDN网站的观点或立场
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值