MyBatis Generator根据数据库生成实体类

in #cn7 years ago

第一步:生成maven项目

第二步:在pom.xml中添加jdbc连接依赖包和mybatis生成实体类的依赖包,

<dependency>
            <groupId>mysql</groupId>
            <artifactId>mysql-connector-java</artifactId>
            <version>5.1.6</version>
        </dependency>
<dependency>
            <groupId>org.mybatis.generator</groupId>
            <artifactId>mybatis-generator-core</artifactId>
            <version>1.3.2</version>
        </dependency>

第三步:新建生成代码的配置文件

<?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>
    (html comment removed:  <properties resource="db.properties" /> )
(html comment removed:  你的mysql驱动jar包路径 )
    <classPathEntry location="D:\repo\mavenRepository\mysql\mysql-connector-java\5.1.40\mysql-connector-java-5.1.40.jar" />
    <context id="mysql2Beans" targetRuntime="MyBatis3">
        <commentGenerator>
            (html comment removed:  删除代码中带有 代码生成器的注释信息 )
            <property name="suppressAllComments" value="false" />
            (html comment removed:  是否去除自动生成的注释 true:是 : false:否 )
            <property name="suppressDate" value="true" />
        </commentGenerator>

        <jdbcConnection driverClass="com.mysql.jdbc.Driver"
            connectionURL="你的数据库连接信息"
            userId="数据库用户名" password="数据库用户对应密码" />

        <javaTypeResolver>
            <property name="forceBigDecimals" value="false" />
        </javaTypeResolver>

        (html comment removed:  生成模型的包名和位置 )
        <javaModelGenerator targetPackage="fkor.blog.model"
            targetProject="E:\ConvertBean">
            <property name="enableSubPackages" value="true" />
            <property name="trimStrings" value="true" />
        </javaModelGenerator>

        <sqlMapGenerator targetPackage="fkor.blog.mapper"
            targetProject="E:\ConvertBean">
            <property name="enableSubPackages" value="true" />
        </sqlMapGenerator>

        <javaClientGenerator targetPackage="fkor.blog.dao"
            targetProject="E:\ConvertBean" type="XMLMAPPER">
            <property name="enableSubPackages" value="true" />
        </javaClientGenerator>


        (html comment removed:  要生成的表 tableName是数据库中的表名或视图名 domainObjectName是实体类名 )
        (html comment removed: 无论字段是什么类型,生成的类属性都是varchar )
        (html comment removed:  <table schema="btupayprod" tableName="T_INFO_MARKETING_CFG" enableSelectByExample="false" 
            enableDeleteByExample="false" enableCountByExample="false" enableUpdateByExample="fasle"> 
            </table> )
        (html comment removed:  <columnOverride column="AFTER_AMT" jdbcType="VARCHAR" /> )
        (html comment removed:  <table schema="btupayprod" tableName="t_log_online_payment" enableSelectByExample="false" 
            enableDeleteByExample="false" enableCountByExample="false" enableUpdateByExample="fasle"> 
            无论字段是什么类型,生成的类属性都是varchar <columnOverride column="AFTER_AMT" jdbcType="VARCHAR" 
            /> </table> )

    </context>
</generatorConfiguration>

配置文件放置的位置

配置文件放置的位置

注意:名字需要命名为generator.xml

第四步:建立启动类

public class App {

    public static void main(String[] args) {
        args = new String[] { "-configfile", "src\\main\\resources\\generator.xml", "-overwrite" };
        ShellRunner.main(args);
    }

}

启动APP类即可完成实体类的自动生成拉~快行动起来吧

Sort:  

您好。我是 steem 中文区的机器人。昨天,您在 steem 的 cn 社区第二次发布文章。为了让更多的人读到新人的文章,您的文章被列入了中文区新人之家的“希望工程”,欢迎点击查看

新人之家欢迎你,这里有帮助新手了解 steem 的指南。请注意,新手最容易忽视的两点:1. 千万不要丢失您的密码;2.千万不要抄袭,非原创的文字、图片、视频资料请务必注明出处,否则可能会得到差评并列入黑名单。

欢迎参加之家举办的各种活动,并期待您在未来继续发布优质原创文章!

您不必回复我。当然,如果您回复,我会非常高兴的,即使我只是个卑微的机器人!

Hello. I am a bot from Steem CN community. Yesterday you posted in CN category for the second time. Your post is listed in the Welcome Center for New Steemians. Welcome to CN community. Please do not forget your password. Do not plagiarise. Looking forward to more high-quality posts from you in the future!

You do not have to reply me. But if you reply me, I would be happy, even I am a bot!