mybatis自动生成类

  • Post author:
  • Post category:其他



GITHUB上面,有这个插件的地址https://github.com/mybatis/generator/tree/master/eclipse/UpdateSite,下载下来,然后放到eclispe下面的dropins下面,重启一下就行了。

最后,我们重点的讲一下generatorConfig.xml这个配置项文件


classPathEntry

:元素 用于添加运行类路径位置到类路径中的 MyBatis Generator(MBG)。 classPathEntry元素是



generatorConfiguration

的子元素.MBG 在这些情况下从这些路径下加载类:

a 当加载 JDBC 驱动内省数据库时

b 当加载根类中的 JavaModelGenerator 检查重写的方法时


context

:元素用于指定生成一组对象的环境。子元素用于指定要连接到的数据库、 要生成对象的类型和要内省的表。多个 context元素可以在



generatorConfiguration

元素中列出来,这样可以在同一个MyBatis Generator (MBG)从不同的数据库或者使用不同的生成生成器参数生成对象。


以下都 是context的子元素

commentGenerator:用来定义注释生成的属性,主要有suppressAllComments,suppressDate这两个属性。其中suppressAllComments

表示是否生成注释,suppressDate表示是否生成日期

jdbcConnection:定义数据库相关的属性说明,比较简单,就不列了。



javaModelGenerator:JAVA的model生成配置,主要有targetPackage,targetProject丙个属性

targetPackage:表示生成的MODEL包路径

targetProject:表示生成的MODEL项目路径

sqlMapGenerator:用于定义SQL映射生成器的属性。SQL映射生成器为每一个内省的表生成MyBatis/iBATIS形式的XML文件。如果不指定一个javaClientGenerator,则适用以下规则:

如果您指定一个sqlMapGenerator,那么MBG将只生成SQL映射的XML文件和模型对象。如果您没有指定一个sqlMapGenerator,那么MBG将只会生成模型对象。

targetPackage:这个包用于放置生成的SQL映射文件。在默认的生成器中,属性”enableSubPackages”用来控制如何计算实际的包。

如果是true,如果表的catalog和schema存在,就将他们作为子包加起来。如果”enableSubPackages”是false(默认值),计算的package将是targetPackage属性指定的值。MBG 将创建所需的生成包的文件夹。

targetProject:这用来指定生成SQL映射的目标项目。当在Eclipse环境中运行时,此选项指定保存对象的位置的项目和源文件夹。在其他环境中,此值应为本地文件系统上的现有目录。如果它不存在,MBG不会创建它。

javaClientGenerator:用于定义 Java 客户端代码生成器的属性。Java客户端生成器生成Java接口和类,它可以简单地使用生成的Java模型和XML映射文件。在iBATIS2目标环境中,这些对象可以生成DAO接口和实现类形式的代码。对Mybatis来说,会生成Mapper接口形式的代码。如果不指定此元素,然后代码生成器(MBG)将不会生成Java客户端接口和类。

table 元素用来从内省数据库中选择一个表。选定的表会生成如下的这些对象:

一个 MyBatis/iBATIS 格式的SQL映射文件

一组根据表生成的”model”类:

一个和表的主键匹配的类(如果表有主键)。

一个包含了非主键字段和BLOB字段的类,如果存在主键类,这个类就会继承主键类。

如果表中包含BLOB字段,就会有一个包含了BLOB字段的类。这个类会根据表的配置继承上面的一个或两个类。

一个用于不同的”by example”方法(selectByExample, deleteByExample)生成动态查询条件的类。

(可选) 一个DAO接口或者类。

最后给个配置截图:



版权声明:本文为wzcheson原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。