generatorConfig.xml

本文介绍了一个具体的MyBatis Generator配置文件示例,详细展示了如何通过配置文件自动生成数据库相关的Java实体类、映射文件及DAO层接口。包括数据库连接设置、生成文件的目标路径等关键配置。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

<?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>

    <context id="DB2Tables"    targetRuntime="MyBatis3">
        <commentGenerator>
            <property name="suppressDate" value="true"/>
            <property name="suppressAllComments" value="true"/>
        </commentGenerator>
        <!--数据库链接地址账号密码-->
        <jdbcConnection driverClass="com.mysql.jdbc.Driver" connectionURL="jdbc:mysql://127.0.0.1:3306/spring-test" userId="root" password="root">
        </jdbcConnection>
        <javaTypeResolver>
            <property name="forceBigDecimals" value="false"/>
        </javaTypeResolver>
        <!--生成Model实体类存放位置-->
        <javaModelGenerator targetPackage="com.qust.model" targetProject="src/main/java">
            <property name="enableSubPackages" value="true"/>
            <property name="trimStrings" value="true"/>
        </javaModelGenerator>
        <!--生成映射文件存放位置-->
        <sqlMapGenerator targetPackage="mapper" targetProject="src/main/resources">
            <property name="enableSubPackages" value="true"/>
        </sqlMapGenerator>
        <!--生成Dao类存放位置-->
        <!-- 客户端代码,生成易于使用的针对Model对象和XML配置文件 的代码
                type="ANNOTATEDMAPPER",生成Java Model 和基于注解的Mapper对象
                type="MIXEDMAPPER",生成基于注解的Java Model 和相应的Mapper对象
                type="XMLMAPPER",生成SQLMap XML文件和独立的Mapper接口
        -->
        <javaClientGenerator type="XMLMAPPER" targetPackage="com.qust.mapper" targetProject="src/main/java">
           <property name="enableSubPackages" value="true"/>
       </javaClientGenerator>

        <!--生成对应表及类名-->
        <table tableName="user" domainObjectName="User" enableCountByExample="false" enableUpdateByExample="false" enableDeleteByExample="false" enableSelectByExample="false" selectByExampleQueryId="false"></table>
    </context>
</generatorConfiguration>
### 正确配置和使用 `generatorConfig.xml` 文件的方法 #### 配置结构概述 `generatorConfig.xml` 是 MyBatis Generator (MBG) 的核心配置文件,用于定义数据库表到 Java 实体类和其他相关代码的映射规则。该文件主要由 `<generatorConfiguration>` 根元素及其子元素组成[^2]。 #### 主要配置项说明 1. **引入外部属性文件** 使用 `<properties>` 元素可以指定一个外部属性文件路径,从而简化配置并提高可维护性。例如: ```xml <properties resource="db.properties"/> ``` 这样可以通过 `${propertyName}` 的方式引用属性文件中的值[^3]。 2. **JDBC 数据库连接信息** 在 `<context>` 下的 `<jdbcConnection>` 中配置 JDBC 信息,这是访问数据库的关键部分。以下是示例配置: ```xml <jdbcConnection driverClass="${driver}" connectionURL="${url}" userId="${username}" password="${password}"> </jdbcConnection> ``` 3. **目标项目目录 (`targetProject`)** 定义生成的 Java 文件存储位置以及包名前缀。例如: ```xml <javaModelGenerator targetPackage="com.example.model" targetProject="src/main/java"> <property name="enableSubPackages" value="true"/> </javaModelGenerator> ``` 4. **SQL 映射文件生成器** 如果需要生成 SQL 映射文件,则需配置 `<sqlMapGenerator>` 和 `<ibatorContext>` 等相关内容。例如: ```xml <sqlMapGenerator targetPackage="mapper" targetProject="src/main/resources"> </sqlMapGenerator> ``` 5. **Java Client 生成器** 可选地生成 DAO 或 Mapper 接口实现类: ```xml <javaClientGenerator type="XMLMAPPER" targetPackage="com.example.mapper" targetProject="src/main/java"> </javaClientGenerator> ``` 6. **表选择与列覆盖规则** 使用 `<table>` 元素来指定哪些表参与生成操作,并可通过 `<columnOverride>` 自定义字段名称或其他细节。例如: ```xml <table tableName="users" domainObjectName="User"> <columnOverride column="id" property="userId" javaType="int"/> </table> ``` 7. **插件扩展支持** MBG 支持通过自定义插件增强功能,比如修改默认行为或增加额外逻辑。例如: ```xml <plugin type="org.mybatis.generator.plugins.SerializablePlugin"/> ``` 8. **运行生成过程** 当完成上述所有必要配置之后,可以选择 Maven 插件或者命令行工具执行生成任务。如果采用的是 Maven 方式,则只需按照如下步骤操作即可[^1]: - 设置好对应的 POM 文件; - 执行类似于 `mvn mybatis-generator:generate` 命令启动流程; --- #### 示例完整的 `generatorConfig.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> <!-- 引入外部属性 --> <properties resource="db.properties"/> <context id="DB2Tables" targetRuntime="MyBatis3"> <!-- 添加注释 --> <commentGenerator> <property name="suppressAllComments" value="true"/> </commentGenerator> <!-- 数据库链接 --> <jdbcConnection driverClass="${driver}" connectionURL="${url}" userId="${username}" password="${password}"/> <!-- Model 类生成 --> <javaModelGenerator targetPackage="com.example.domain" targetProject="src/main/java"> <property name="enableSubPackages" value="true"/> </javaModelGenerator> <!-- Mapper XML 文件生成 --> <sqlMapGenerator targetPackage="mapper" targetProject="src/main/resources"> </sqlMapGenerator> <!-- Mapper Interface 生成 --> <javaClientGenerator type="XMLMAPPER" targetPackage="com.example.mapper" targetProject="src/main/java"> </javaClientGenerator> <!-- 表配置 --> <table tableName="orders" domainObjectName="Order"> <columnOverride column="order_id" property="orderId" jdbcType="INTEGER"/> </table> </context> </generatorConfiguration> ``` ---
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值