Mybtais Genrerator代码生成器解析(一)

官方文档地址: http://www.mybatis.org/generator/

创建代码生成器xml文件,添加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>
  配置内容....
</generatorConfiguration>

generationConfiguration有三个字标签,按照顺序分别是properties,classPathEntry,context标签。

注意:书写的时候也需要按照这个顺序来写。

properties标签:用来指定外部的属性元素,最多可以在xml文件中配置一个,也可以配置,properties用于指定一个需要在配置文件中使用的外部文件,一般用来引用数据库配置文件,引入配置文件之后可以在配置中使用${property}引用属性文件中的值

properties标签中包含两个resource和url两个属性,但是只能使用一个,不能同时使用,否则会报错。

resource属性:指定classpath下的属性文件,比如: com/test/config/database.properties

url属性:指定文件系统上特定位置的属性文件,比如:C:/config/db.properties


classPathEntry标签: 此标签可以配置多个,也可以不配置,常见用法是使用location属性指定驱动jar包地址

例如:  <classPathEntry location="E:\myprojects\mybatisGeneratorCustom\lib\mysql-connector-java-5.1.35.jar"/>


context标签:此标签最少配置一个,可以配置多个,用于指定生成一组对象的环境,其中id属性是必须指定的,其余属性均可看实际情况添加。下面是context标签几个比较重要的属性。

defaultModelType属性: 用来定义代码生成器如何生成实体类,有以下几个属性值

        conditional:    默认值,如果一个表的主键只有一个字段,不会为该字段生成单独实体类,会将该字段合并到基本实体类中。

        flat:  为每张表生成一个实体类,这个实体类包含表中的所有字段,这个属性值也是最常用的。

        hierarchical:    如果表有主键,会生成一个单独的主键实体类,blob字段生成一个单独的实体列,其他属性生成一个实体类,生成的实体类之间存在继承关系

targetRuntime属性: 指定生成的代码运行时的环境,有以下属性可选

    MyBatis3:默认值,生成mybatis3.xx以上的代码,包括Mybatis3Simple

    Mybatis2Simple: 不生成Example相关方法

introspectedColumnImpl属性: 类全限定名,用来扩展生成器,一般不配置此项。

context的字标签,注意:标签配置有严格的顺序,使用时请按照如下顺序进行配置,顺序和可配置数量如下

    property(0个或多个)

    plugin(0个或多个)

    commentGenerator(0个或一个)

    jdbcConnection(一个)

    javaTypeResolver(0个或一个)

    javaModelGenerator(一个)

    sqlMapGenerator(0个或一个)

    javaClientGenerator(0个或一个)

    table(一个或多个)






猜你喜欢

转载自blog.csdn.net/Let_me_tell_you/article/details/80781374