经验首页 前端设计 程序设计 Java相关 移动开发 数据库/运维 软件/图像 大数据/云计算 其他经验
当前位置:技术经验 » Java相关 » Java » 查看文章
MyBatis -- generator 逆向工程
来源:cnblogs  作者:Signal、  时间:2018/11/30 9:42:37  对本文有异议

 

一、引言

官网文档:http://www.mybatis.org/generator/index.html

通过使用官方提供的mapper自动生成工具,mybatis-generator-core-1.3.2来自动生成po类和mapper映射文件。

作用:mybatis官方提供逆向工程,可以使用它通过数据库中的表来自动生成Mapper接口和映射文件(单表增删改查)和Po类.

1.需要导入的jar包

  

2.mapper生成配置文件

  需要在generatorConfig.xml 中配置mapper生成的详细信息,主要需要修改的几个点:

  1)添加要生成的数据库表

  2)po文件所在的包的路径

  3)mapper文所在包的路径

generatorConfig.xml配置如下:

  1. <?xml version="1.0" encoding="UTF-8"?>
  2. <!DOCTYPE generatorConfiguration
  3. PUBLIC "-//mybatis.org//DTD MyBatis Generator Configuration 1.0//EN"
  4. "http://mybatis.org/dtd/mybatis-generator-config_1_0.dtd">
  5.  
  6. <generatorConfiguration>
  7. <context id="MybatisGenerator" targetRuntime="MyBatis3">
  8. <commentGenerator>
  9. <!-- 是否去除自动生成的注释 -->
  10. <property name="supressAllComments" value="true" />
  11. </commentGenerator>
  12.  
  13. <!-- 数据库连接信息:驱动类、连接地址、用户名、密码 -->
  14. <jdbcConnection driverClass="com.mysql.jdbc.Driver"
  15. connectionURL="jdbc:mysql://localhost:3306/springmvc?serverTimezone=UTC"
  16. userId="root" password="950806">
  17. </jdbcConnection>
  18.  
  19. <!-- 默认值 -->
  20. <javaTypeResolver>
  21. <property name="forceBigDecimals" value="false" />
  22. </javaTypeResolver>
  23.  
  24. <!-- 生成的po实体类的存放位置 -->
  25. <javaModelGenerator targetPackage="po"
  26. targetProject=".\src">
  27. <property name="enableSubPackages" value="true" />
  28. <property name="trimStrings" value="true" />
  29. </javaModelGenerator>
  30.  
  31. <!-- 生成的mapper映射文件(XML文件)的存放位置 -->
  32. <sqlMapGenerator targetPackage="mapper"
  33. targetProject=".\src">
  34. <property name="enableSubPackages" value="false" />
  35. </sqlMapGenerator>
  36.  
  37. <!-- 生成的mapper接口(JAVA文件)的存放位置 -->
  38. <javaClientGenerator type="XMLMAPPER"
  39. targetPackage="mapper" targetProject=".\src">
  40. <property name="enableSubPackages" value="false" />
  41. </javaClientGenerator>
  42.  
  43. <!-- 指定数据库表 -->
  44. <table tableName="items" />
  45. <table tableName="users" />
  46.  
  47. </context>
  48. </generatorConfiguration>

3.配置完后,编写java类生成mapper文件

  1. import java.io.File;
  2. import java.util.ArrayList;
  3. import java.util.List;
  4. import org.mybatis.generator.api.MyBatisGenerator;
  5. import org.mybatis.generator.config.Configuration;
  6. import org.mybatis.generator.config.xml.ConfigurationParser;
  7. import org.mybatis.generator.internal.DefaultShellCallback;
  8. public class MyGenerator {
  9. public void generate() throws Exception {
  10. List<String> warnings = new ArrayList<String>();
  11. boolean overwrite = true;
  12. File configFile = new File("GeneratorConfig.xml");
  13. ConfigurationParser cp = new ConfigurationParser(warnings);
  14. Configuration config = cp.parseConfiguration(configFile);
  15. DefaultShellCallback callback = new DefaultShellCallback(overwrite);
  16. MyBatisGenerator myBatisGenerator = new MyBatisGenerator(config, callback, warnings);
  17. myBatisGenerator.generate(null);
  18. }
  19. public static void main(String[] args) throws Exception {
  20. MyGenerator myGenerator = new MyGenerator();
  21. myGenerator.generate();
  22. }
  23. }

4.执行java程序,自动对数据库中的表数据生成相应的mapper映射文件和po文件

刷新包结构:生成了需要的po文件和mapper映射文件

 

 友情链接:直通硅谷  点职佳  北美留学生论坛

本站QQ群:前端 618073944 | Java 606181507 | Python 626812652 | C/C++ 612253063 | 微信 634508462 | 苹果 692586424 | C#/.net 182808419 | PHP 305140648 | 运维 608723728

W3xue 的所有内容仅供测试,对任何法律问题及风险不承担任何责任。通过使用本站内容随之而来的风险与本站无关。
关于我们  |  意见建议  |  捐助我们  |  报错有奖  |  广告合作、友情链接(目前9元/月)请联系QQ:27243702 沸活量
皖ICP备17017327号-2 皖公网安备34020702000426号