使用MyBatis Generator自动生成DAO以及实体类

来源:互联网 发布:stp打开软件 编辑:程序博客网 时间:2024/04/29 23:45

虽然MyBatis很方便,但是想要手写全部的mapper还是很累人的,好在MyBatis官方推出了自动化工具,可以根据数据库和定义好的配置直接生成DAO层及以下的全部代码,非常方便.

 

需要注意的是,虽然自动化工具需要一个配置文件,但是MyBatis的配置文件仍然不能少,自动化工具的配置文件用于对生成的代码的选项进行配置,MyBatis的配置文件才是运行时的主要配置文件.

 

这个工具叫做MyBatis_Generator,不过比较扯淡的是官方虽然推出了这个工具,不过在google code上面看到的工具仅仅是一个jar包而已,在用这个工具的时候需要在cmd下面执行命令才能根据配置文件生成所需的各种文件,下面是该jar的下载地址:

http://mybatis.googlecode.com/files/mybatis-generator-core-1.3.1-bundle.zip

 

后来我仔细挖掘了Google Code上的东西,发现官方提供的也有可以直接安装到Eclipse里面的插件,唯一让人不爽的是这个插件只能安装在Eclipse3.6以上的版本,目前大部分人用的都是3.5.2或者更低的版本,给个地址吧,想方便点的可以试试,请确认你的eclipse的版本或者Myeclipse所用的eclipse版本是3.6以上的,否则无法安装,下面是eclipse更新地址:

http://mybatis.googlecode.com/svn/sub-projects/generator/trunk/eclipse/UpdateSite/

 

 

在类路径下面建立generatorConfig.xml文件,这个文件配置各种生成选项,


generatorConfig.xml文件可以把鼠标放在项目上右键新建然后选取MyBatis Generator Configuration File选项就会生成该文件,然后你在进去改写你

自己需要配置的参数即可,如下图所示:



执行上面的方法将会创建出一个generatorConfig.xml的文件出来,然后打开该文件,修改参数,如下图所示:




上面是我的配置信息,您可以根据自己的具体项目配置即可。

配置好后,把鼠标放到generatorConfig.xml上面,右键选择Generate MyBatis/iBATIS Artifacts选项即可自动生成,没有的话,可以刷新下项目即可。

如下图是我自动生成的类。




上面myeclipse右键没有选项的是没有mybatis generator这个插件,可以百度下安装很快的,可以离线安装和在线安装两种。


generatorConfig.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 ><!-- 设置mysql驱动路径 -->  <classPathEntry location="D:/mysoft/mysql-connector-java-5.1.18-bin.jar" />    <context id="context1" >    <!-- jdbc连接信息 -->      <jdbcConnection driverClass="com.mysql.jdbc.Driver" connectionURL="jdbc:mysql://localhost:3306/scomserverdb" userId="root" password="" />    <!-- 生成vo对象 -->      <javaModelGenerator targetPackage="com.sinoservices.test.vo" targetProject="Scomserver" />    <!-- 生成用于查询的Example对象 -->      <sqlMapGenerator targetPackage="com.sinoservices.test.vo" targetProject="Scomserver" />    <!-- 生成DAO的类文件以及配置文件 -->      <javaClientGenerator targetPackage="com.sinoservices.test.dao" targetProject="Scomserver" type="XMLMAPPER" />    <!-- 想要生成的数据库表,自动化工具会根据该表的结构生成相应的vo对象 -->      <table schema="" tableName="sys_feedback" >       </table>  </context></generatorConfiguration>




0 0
原创粉丝点击