MyBatis代码生成器(maven插件方式和控制台命令运行方式)
代码生成器的作用:
1、生成domain
2、生成mapper接口
3、生成mapper映射文件
准备工作:导入MyBatis所需要的包
第一步:在src/main/resources(必须)目录下创建代码生成器配置文件(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> <!--mysql数据库驱动包路径--> <classPathEntry location="D:\repository\mysql\mysql-connector-java\5.1.39\mysql-connector-java-5.1.39.jar" /> <!-- context:代码生成规则配置的上下文 id:标识 targetRuntime: MyBatis3Simple 只会生成基本的CRUD操作 --> <context id="DB2Tables" targetRuntime="MyBatis3Simple"> <!--commentGenerator:注释生成策略--> <commentGenerator> <!--suppressAllComments:是否阻止注释生成--> <property name="suppressAllComments" value="true"/> <!--suppressDate:是否阻止时间戳生成--> <property name="suppressDate" value="true"/> </commentGenerator> <!--jdbcConnection:数据库的链接属性--> <jdbcConnection driverClass="com.mysql.jdbc.Driver" connectionURL="jdbc:mysql:///数据库名称" userId="用户名" password="密码"> </jdbcConnection> <!--javaTypeResolver:java类型转换策略--> <javaTypeResolver > <!-- forceBigDecimals false:如果数据库中的字段类型为numeric或者decimal,在代码生成的时候根据数据库中设定的长度自动选择java类型进行转换 true:直接使用java.math.BigDecimal类型--> <property name="forceBigDecimals" value="false" /> </javaTypeResolver> <!--domain生成策略;targetPackage:生成到哪个包下面,targetProject:生成到哪个项目目录下面--> <javaModelGenerator targetPackage="cn.wang.domain" targetProject="src/main/java"> <!--<property name="enableSubPackages" value="true" />--> <!--表示是否修剪字符串(去掉空格--> <property name="trimStrings" value="true" /> </javaModelGenerator> <!--sqlMapGenerator:映射文件生成策略 targetPackage:生成到哪个包下面,targetProject:生成到哪个项目目录下面 --> <sqlMapGenerator targetPackage="cn.wang.mapper" targetProject="src/main/resources"> <property name="enableSubPackages" value="true" /> </sqlMapGenerator> <!--mapper接口生成策略 type:ANNOTATEDMAPPER:注解的形式 XMLMAPPER:xml映射的形式--> <javaClientGenerator type="XMLMAPPER" targetPackage="cn.wang.mapper" targetProject="src/main/java"> <property name="enableSubPackages" value="true" /> </javaClientGenerator> <!--指定要生成代码的表 domainObjectName:设置表对应的domain实体类生成的名称 --> <table tableName="t_user" domainObjectName="User"></table> <table tableName="t_dept" domainObjectName="Dept"></table> <table tableName="product" domainObjectName="Product"></table> </context> </generatorConfiguration>
第二步:在Maven项目的pom.xml加入以下配置(Maven插件方式使用)
注意:以下配置千万不要放在<pluginManagement></pluginManagement>标签里面。
<!--mybatis_generator代码生成器专用--> <build> <plugins> <plugin> <groupId>org.mybatis.generator</groupId> <artifactId>mybatis-generator-maven-plugin</artifactId> <version>1.3.7</version> </plugin> </plugins> </build>
第三步:使用MyBatis代码生成器
配置完毕后,就可以在Idea页面最右边的Maven Projects中看到代码生成器,右键点击代码生成器运行即可。
拓展:使用命令运行代码生成器
1、必须事先在src/main/resources(必须)目录下创建代码生成器配置文件(generatorConfig.xml)
2、下载jar包:mybatis-generator-core-1.3.7.jar;并将jar包放在项目根目录下。
3、在项目根目录中打开cms控制台,执行以下命令即可。
java -jar mybatis-generator-core-1.3.7.jar -configfile generatorConfig.xml -overwrite