IT虾米网

mybatis配置文件generatorConfig.xml

developer 2022年05月18日 编程语言 170 0

 mybatis配置文件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> 
    <!-- 数据库驱动:选择你的本地硬盘上面的数据库驱动包--> 
    <classPathEntry location="D:\apache-maven-3.6.3\repository\mysql\mysql-connector-java\8.0.19\mysql-connector-java-8.0.19.jar"/> 
    <context id="DyzzTables" targetRuntime="MyBatis3"> 
        <commentGenerator> 
            <property name="suppressDate" value="true"/> 
            <!-- 是否去除自动生成的注释 true:是 : false:否 --> 
            <property name="suppressAllComments" value="false"/> 
        </commentGenerator> 
        <!--数据库连接驱动类,URL,用户名、密码 --> 
        <!--com.mysql.cj.jdbc.Driver 版驱动需要指定服务时区,中国时间建议使用 
            北京时间东八区 
            serverTimezone=GMT%2B8 
            或者使用上海时间 
            serverTimezone=Asia/Shanghai 
         --> 
        <jdbcConnection driverClass="com.mysql.cj.jdbc.Driver" connectionURL="jdbc:mysql://127.0.0.1:3306/dyzz?serverTimezone=GMT%2B8" 
                        userId="root" password="a123456"> 
        </jdbcConnection> 
        <javaTypeResolver> 
            <property name="forceBigDecimals" value="false"/> 
        </javaTypeResolver> 
        <!-- 生成(实体)模型的包名和位置--> 
        <javaModelGenerator targetPackage="com.example.demo.model" targetProject="src/main/java"> 
            <!-- 是否允许子包,即targetPackage.schemaName.tableName --> 
            <property name="enableSubPackages" value="false"/> 
            <!-- 是否对model添加 构造函数 --> 
            <property name="constructorBased" value="false"/> 
            <!-- 是否对类CHAR类型的列的数据进行trim操作 --> 
            <property name="trimStrings" value="true"/> 
            <!-- 建立的Model对象是否 不可改变  即生成的Model对象不会有 setter方法,只有构造方法 --> 
            <property name="immutable" value="false"/> 
            <!--父类,超类 没有可以不加--> 
            <!-- 
            <property name="rootClass" value=""/> 
            --> 
        </javaModelGenerator> 
        <!-- 生成XML映射文件的包名和位置--> 
        <!--mapper映射文件生成所在的目录 为每一个数据库的表生成对应的SqlMap文件 --> 
        <sqlMapGenerator targetPackage="mappings" targetProject="src/main/resources/config"> 
            <property name="enableSubPackages" value="true"/> 
        </sqlMapGenerator> 
        <!-- 生成DAO接口的包名和位置--> 
        <javaClientGenerator type="XMLMAPPER" targetPackage="com.example.demo.dao" targetProject="src/main/java"> 
            <!-- enableSubPackages:是否让schema作为包的后缀 --> 
            <property name="enableSubPackages" value="true"/> 
        </javaClientGenerator> 
        <!-- 要生成的表 tableName是数据库中的表名或视图名 domainObjectName是实体类名--> 
        <!-- tableName 表明 
            domainObjectName:生成的domain类的名字,如果不设置,直接使用表名作为domain类的名字; 
            enableInsert(默认true):指定是否生成insert语句; 
            schema 
            alias 指定新的别名 
            enableInsert(默认true):指定是否生成insert语句; 
            enableSelectByPrimaryKey(默认true):指定是否生成按照主键查询对象的语句(就是getById或get); 
            enableSelectByExample(默认true):MyBatis3Simple为false,指定是否生成动态查询语句; 
            enableUpdateByPrimaryKey(默认true):指定是否生成按照主键修改对象的语句(即update); 
            enableDeleteByPrimaryKey(默认true):指定是否生成按照主键删除对象的语句(即delete); 
            enableDeleteByExample(默认true):MyBatis3Simple为false,指定是否生成动态删除语句; 
            enableCountByExample(默认true):MyBatis3Simple为false,指定是否生成动态查询总条数语句(用于分页的总条数查询); 
            enableUpdateByExample(默认true):MyBatis3Simple为false,指定是否生成动态修改语句(只修改对象中不为空的属性); 
            modelType:参考context元素的defaultModelType,相当于覆盖; 
            delimitIdentifiers:参考tableName的解释,注意,默认的delimitIdentifiers是双引号,如果类似MYSQL这样的数据库,使用的是`(反引号,那么还需要设置context的beginningDelimiter和endingDelimiter属性) 
            delimitAllColumns:设置是否所有生成的SQL中的列名都使用标识符引起来。默认为false,delimitIdentifiers参考context的属性 
        --> 
        <table tableName="USERS" 
               domainObjectName="USERS" 
               alias="users" 
               enableInsert="true" 
               enableCountByExample="true" 
               enableUpdateByExample="true" 
               enableDeleteByExample="true" 
               enableSelectByExample="true" 
               selectByExampleQueryId="true"> 
        </table> 
    </context> 
</generatorConfiguration>

评论关闭
IT虾米网

微信公众号号:IT虾米 (左侧二维码扫一扫)欢迎添加!

springboot+mybatis+mysql集成搭建