网上看到很多方法,效果都不明显,甚至无法执行,特意写了博客,也加深自己的印象。
下面给大家介绍一种偷懒的生成工具使用--mybatis-generator,使用此插件可以从数据库生成指定表格对应的实体类、mapper接口以及对应的xml文件(包含一些常用的方法实现)。
首先是通过maven添加插件引用
新建配置文件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"> <!--利用MyBatis Generator里面的Xml文件格式,复制成为resource的xml文件,并进行修改--> <generatorConfiguration> <!--找到MySQL驱动包的路径--> <classPathEntry location="C:\Users\ZB\.m2\repository\mysql\mysql-connector-java\5.1.47\mysql-connector-java-5.1.47.jar" /> <!--配置连接MySQL数据库的信息--> <context id="inputdb" targetRuntime="MyBatis3"> <jdbcConnection driverClass="com.mysql.jdbc.Driver" connectionURL="jdbc:mysql://localhost:3306/inputdb" userId="root" password="XXoo0321"> </jdbcConnection> <!--会将数据库里的int类型数据转换为Java里的bigDecimals --> <javaTypeResolver > <property name="forceBigDecimals" value="false" /> </javaTypeResolver> <!--配置各个文件的相对路径和项目路径--> <!--产生实体类,需要和App是同级的--> <javaModelGenerator targetPackage="com.kay.entity" targetProject="src/main/java"> <property name="enableSubPackages" value="true" /> <property name="trimStrings" value="true" /> </javaModelGenerator> <!--映射文件,一定是在resources中的--> <sqlMapGenerator targetPackage="mapper" targetProject="src/main/resources"> <property name="enableSubPackages" value="true" /> </sqlMapGenerator> <!--底层dao--> <javaClientGenerator type="XMLMAPPER" targetPackage="com.kay.dao" targetProject="src/main/java"> <property name="enableSubPackages" value="true" /> </javaClientGenerator> <!--将example类型设为false,否则实体类里面会多一个example的类exampleStudent --> <!--表明为数据库的表明,生成实体类Student,会自动生成到entity的目录中--> <table tableName="tb_area" domainObjectName="Area" enableCountByExample="false" enableDeleteByExample="false" enableSelectByExample="false" enableUpdateByExample="false"> </table>
</context> </generatorConfiguration>
IEDA配置运行选项:
可以看到对应的文件已经生成,而且mapper中也生成了一些基础的方法