mybatis反转自动生成dao、实体类和mapper.xml

来源:互联网 发布:电脑网络显示感叹号 编辑:程序博客网 时间:2024/04/29 16:25
  Mybatis不像hibernate那样可以直接通过Myeclipse直接生成相应的映射文件,它是一个半自动化的ORM框架,所以主要的工作就是配置Mapping映射文件,但是由于手写映射文件很容易出错,所以可利用MyBatis生成器自动生成实体类、DAO接口和Mapping映射文件。这样可以省去很多的功夫,将生成的代码copy到项目工程中即可。

所需要的文件如下:


主要是配置generatorConfig.xml这个文件

 <span></span><div class="highlight"><pre><div id="LC1" class="line"><span class="o"><?</span><span class="n">xml</span> <span class="n">version</span><span class="o">=</span><span class="s">"1.0"</span> <span class="n">encoding</span><span class="o">=</span><span class="s">"UTF-8"</span><span class="o">?></span>  </div><div id="LC2" class="line"><span class="o"><!</span><span class="n">DOCTYPE</span> <span class="n">generatorConfiguration</span>  </div><div id="LC3" class="line">  <span class="n">PUBLIC</span> <span class="s">"-//mybatis.org//DTD MyBatis Generator Configuration 1.0//EN"</span>  </div><div id="LC4" class="line">  <span class="s">"http://mybatis.org/dtd/mybatis-generator-config_1_0.dtd"</span><span class="o">></span>  </div><div id="LC5" class="line"><span class="o"><</span><span class="n">generatorConfiguration</span><span class="o">></span>  </div><div id="LC6" class="line"><span class="o"><!--</span> <span class="n">mysql</span><span class="o">-</span><span class="n">connector</span><span class="err">文件路径</span> <span class="o">--></span></div><div id="LC7" class="line">    <span class="o"><</span><span class="n">classPathEntry</span>  <span class="n">location</span><span class="o">=</span><span class="s">"mysql-connector-java-5.1.25-bin.jar"</span><span class="o">/></span>  </div><div id="LC8" class="line">    <span class="o"><</span><span class="n">context</span> <span class="n">id</span><span class="o">=</span><span class="s">"DB2Tables"</span>  <span class="n">targetRuntime</span><span class="o">=</span><span class="s">"MyBatis3"</span><span class="o">></span>  </div><div id="LC9" class="line">        <span class="o"><</span><span class="n">commentGenerator</span><span class="o">></span>  </div><div id="LC10" class="line">            <span class="o"><</span><span class="n">property</span> <span class="n">name</span><span class="o">=</span><span class="s">"suppressDate"</span> <span class="n">value</span><span class="o">=</span><span class="s">"true"</span><span class="o">/></span>  </div><div id="LC11" class="line">            </div><div id="LC12" class="line">            <span class="o"><</span><span class="n">property</span> <span class="n">name</span><span class="o">=</span><span class="s">"suppressAllComments"</span> <span class="n">value</span><span class="o">=</span><span class="s">"true"</span><span class="o">/></span>  </div><div id="LC13" class="line">        <span class="o"></</span><span class="n">commentGenerator</span><span class="o">></span>  </div><div id="LC14" class="line">        <span class="o"><!--</span> <span class="err">链接配置</span> <span class="o">--></span></div><div id="LC15" class="line">        <span class="o"><</span><span class="n">jdbcConnection</span> <span class="n">driverClass</span><span class="o">=</span><span class="s">"com.mysql.jdbc.Driver"</span> </div><div id="LC16" class="line"><span class="n">connectionURL</span><span class="o">=</span><span class="s">"jdbc:mysql://127.0.0.1:3306/ssm"</span> </div><div id="LC17" class="line"><span class="n">userId</span><span class="o">=</span><span class="s">"root"</span> <span class="n">password</span><span class="o">=</span><span class="s">"root"</span><span class="o">></span>  </div><div id="LC18" class="line">        <span class="o"></</span><span class="n">jdbcConnection</span><span class="o">></span>  </div><div id="LC19" class="line">        <span class="o"><</span><span class="n">javaTypeResolver</span><span class="o">></span>  </div><div id="LC20" class="line">            <span class="o"><</span><span class="n">property</span> <span class="n">name</span><span class="o">=</span><span class="s">"forceBigDecimals"</span> <span class="n">value</span><span class="o">=</span><span class="s">"false"</span><span class="o">/></span>  </div><div id="LC21" class="line">        <span class="o"></</span><span class="n">javaTypeResolver</span><span class="o">></span>  </div><div id="LC22" class="line">        <span class="o"><!--</span> <span class="err">生成实体类的路径,</span><span class="n">com</span><span class="o">.</span><span class="na">project</span><span class="o">.</span><span class="na">ssm</span><span class="o">.</span><span class="na">entity</span> <span class="err">这个路径可以自动生成,但是必须有</span><span class="n">src</span><span class="err">这个路径</span><span class="o">--></span></div><div id="LC23" class="line">        <span class="o"><</span><span class="n">javaModelGenerator</span> <span class="n">targetPackage</span><span class="o">=</span><span class="s">"com.project.ssm.entity"</span> </div><div id="LC24" class="line"><span class="n">targetProject</span><span class="o">=</span><span class="s">"src"</span><span class="o">></span>  </div><div id="LC25" class="line">            <span class="o"><</span><span class="n">property</span> <span class="n">name</span><span class="o">=</span><span class="s">"enableSubPackages"</span> <span class="n">value</span><span class="o">=</span><span class="s">"true"</span><span class="o">/></span>  </div><div id="LC26" class="line">            <span class="o"><</span><span class="n">property</span> <span class="n">name</span><span class="o">=</span><span class="s">"trimStrings"</span> <span class="n">value</span><span class="o">=</span><span class="s">"true"</span><span class="o">/></span>  </div><div id="LC27" class="line">        <span class="o"></</span><span class="n">javaModelGenerator</span><span class="o">></span>  </div><div id="LC28" class="line">       <span class="o"><!--</span> <span class="err">生成实体类的路径,这个路径可以自动生成,但是必须有</span><span class="n">src</span><span class="err">这个路径</span><span class="o">--></span></div><div id="LC29" class="line">       <span class="o"><</span><span class="n">sqlMapGenerator</span> <span class="n">targetPackage</span><span class="o">=</span><span class="s">"com.project.ssm.mapping"</span> <span class="n">targetProject</span><span class="o">=</span><span class="s">"src"</span><span class="o">></span>  </div><div id="LC30" class="line">            <span class="o"><</span><span class="n">property</span> <span class="n">name</span><span class="o">=</span><span class="s">"enableSubPackages"</span> <span class="n">value</span><span class="o">=</span><span class="s">"true"</span><span class="o">/></span>  </div><div id="LC31" class="line">        <span class="o"></</span><span class="n">sqlMapGenerator</span><span class="o">></span>  </div><div id="LC32" class="line">        </div><div id="LC33" class="line">        <span class="o"><</span><span class="n">javaClientGenerator</span> <span class="n">type</span><span class="o">=</span><span class="s">"XMLMAPPER"</span> <span class="n">targetPackage</span><span class="o">=</span><span class="s">"com.project.ssm.dao"</span> </div><div id="LC34" class="line"><span class="n">targetProject</span><span class="o">=</span><span class="s">"src"</span><span class="o">></span>  </div><div id="LC35" class="line">            <span class="o"><</span><span class="n">property</span> <span class="n">name</span><span class="o">=</span><span class="s">"enableSubPackages"</span> <span class="n">value</span><span class="o">=</span><span class="s">"true"</span><span class="o">/></span>  </div><div id="LC36" class="line">        <span class="o"></</span><span class="n">javaClientGenerator</span><span class="o">></span>  </div><div id="LC37" class="line">       </div><div id="LC38" class="line">        <span class="o"><</span><span class="n">table</span> <span class="n">tableName</span><span class="o">=</span><span class="s">"user"</span> <span class="n">domainObjectName</span><span class="o">=</span><span class="s">"User"</span> <span class="n">enableCountByExample</span><span class="o">=</span><span class="s">"false"</span> </div><div id="LC39" class="line">      <span class="n">enableUpdateByExample</span><span class="o">=</span><span class="s">"false"</span> <span class="n">enableDeleteByExample</span><span class="o">=</span><span class="s">"false"</span> </div><div id="LC40" class="line">  <span class="n">enableSelectByExample</span><span class="o">=</span><span class="s">"false"</span> <span class="n">selectByExampleQueryId</span><span class="o">=</span><span class="s">"false"</span><span class="o">></</span><span class="n">table</span><span class="o">></span></div><div id="LC41" class="line">    <span class="o"></</span><span class="n">context</span><span class="o">></span>  </div><div id="LC42" class="line"><span class="o"></</span><span class="n">generatorConfiguration</span><span class="o">></span></div>
 




使用dos命令窗口进入lib文件夹下面运行:java -jar mybatis-generator-core-1.3.2.jar -configfile generatorConfig.xml -overwrite


文件已经成功生成:


工具下载地址:http://download.csdn.net/detail/gaoxuaiguoyi/9431576

0 0
原创粉丝点击