小言_互联网的博客

10年 | 写了10年的代码,我最怕写Mybatis这些配置,现在有详解了

382人阅读  评论(0)

Hi ! 我是小小,今天是本周的最后一篇,这一篇将会着重讲解关于MyBatis的一些内容

创建代码生成器

创建Maven项目

在菜单上选择File->new->project选择新建项目

选择maven

输入GroupID和ArtifactID

随便填入即可

选择Finish

即一个普通的Maven项目创建完成

配置generator.xml

generator.xml配置如下所示:


   
  1. <?xml version= "1.0" encoding= "UTF-8" ?>
  2. <!DOCTYPE generatorConfiguration PUBLIC
  3. "-//mybatis.org//DTD MyBatis Generator Configuration 1.0//EN"
  4. "http://mybatis.org/dtd/mybatis-generator-config_1_0.dtd" >
  5. <generatorConfiguration>
  6. <!-- 本地数据库驱动程序jar包的全路径 -->
  7. <classPathEntry location= "C:UsersAdministrator.m2repositorymysqlmysql-connector-java8.0.12mysql-connector-java-8.0.12.jar"/>
  8. <context id= "context" targetRuntime= "MyBatis3">
  9. <commentGenerator>
  10. <property name= "suppressAllComments" value= "false"/>
  11. <property name= "suppressDate" value= "true"/>
  12. </commentGenerator>
  13. <!-- 数据库的相关配置 -->
  14. <jdbcConnection
  15. driverClass= "com.mysql.jdbc.Driver"
  16. connectionURL= "jdbc:mysql://localhost:3306/mybatis"
  17. userId= "root"
  18. password= "jim777"/>
  19. <javaTypeResolver>
  20. <property name= "forceBigDecimals" value= "false"/>
  21. </javaTypeResolver>
  22. <!-- 实体类生成的位置 -->
  23. <javaModelGenerator
  24. targetPackage= "com.homejim.mybatis.entity"
  25. targetProject= ".srcmainjava">
  26. <property name= "enableSubPackages" value= "false"/>
  27. <property name= "trimStrings" value= "true"/>
  28. </javaModelGenerator>
  29. <!-- *Mapper.xml 文件的位置 sqlMapGenerator-->
  30. <sqlMapGenerator
  31. targetPackage= "mybatis/mapper"
  32. targetProject= ".srcmainresources">
  33. <property name= "enableSubPackages" value= "false"/>
  34. </sqlMapGenerator>
  35. <!-- Mapper 接口文件的位置 -->
  36. <javaClientGenerator type= "XMLMAPPER"
  37. targetPackage= "com.homejim.mybatis.mapper"
  38. targetProject= ".srcmainjava">
  39. <property name= "enableSubPackages" value= "false"/>
  40. </javaClientGenerator>
  41. <!-- 相关表的配置 -->
  42. <table tableName= "blog" />
  43. </context>
  44. </generatorConfiguration>

需要改一些内容

  1. 本地数据库驱动程序jar包的全路径

  2. 数据库连接配置

  3. 相关表的配置

  4. 实体类生成存放的位置

  5. MapperXML生成文件存放的位置

  6. Mapper接口存放的位置

配置pom.xml

配置pom.xml如下即可


   
  1. <?xml version= "1.0" encoding= "UTF-8"?>
  2. <project xmlns= "http://maven.apache.org/POM/4.0.0"
  3. xmlns:xsi= "http://www.w3.org/2001/XMLSchema-instance"
  4. xsi:schemaLocation= "http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
  5. <modelVersion> 4.0 .0</modelVersion>
  6. <groupId>com.homejim.mybatis</groupId>
  7. <artifactId>mybatis-generator</artifactId>
  8. <version> 1.0-SNAPSHOT</version>
  9. <!--在原基础上添加 这些就好了-->
  10. <build>
  11. <finalName>mybatis-generator</finalName>
  12. <plugins>
  13. <plugin>
  14. <groupId>org.mybatis.generator</groupId>
  15. <artifactId>mybatis-generator-maven-plugin</artifactId>
  16. <version> 1.3 .7</version>
  17. <configuration>
  18. <!--此处需要注意, 文件与上面的文件匹配-->
  19. <configurationFile>src/main/resources/generator.xml</configurationFile>
  20. <verbose> true</verbose>
  21. <overwrite> true</overwrite>
  22. </configuration>
  23. <executions>
  24. <execution>
  25. <id>Generate MyBatis Artifacts</id>
  26. <goals>
  27. <goal>generate</goal>
  28. </goals>
  29. </execution>
  30. </executions>
  31. <dependencies>
  32. <dependency>
  33. <groupId>org.mybatis.generator</groupId>
  34. <artifactId>mybatis-generator-core</artifactId>
  35. <version> 1.3 .7</version>
  36. </dependency>
  37. </dependencies>
  38. </plugin>
  39. </plugins>
  40. </build>
  41. <!--到此结束-->
  42. </project>

需要注意的是configurationFile 中的文件指明的是generator.xml。

使用及其测试

打开Maven Projects 视图

在IDEA上打开 view -> tools > windows -> Maven Projects

Maven Projects 中双击mybatis-generator

在左侧可以看到Maven Projects,找到mybatis-generator插件 mybatis-generator | Plugins | mybatis-generator | mybatis-generator

双击运行

运行正确以后,可以看到如下结构

XML配置

property

指定元素的属性

分隔符相关


   
  1. <property name= "autoDelimitKeywords" value= "true"/>
  2. <property name= "beginningDelimiter" value= "`"/>
  3. <property name= "endingDelimiter" value= "`"/>

以上配置对应的是mysql。当数据库中的字段和数据库的关键字一样时, 就会使用分隔符。

比如我们的数据列是 delete, 按以上的配置后, 在它出现的地方, 就变成 delete

编码

可以进行配置


   
  1. <property name= "javaFileEncoding" value= "UTF-8"/>

格式化


   
  1. <!--格式化生成的 Java 代码-->
  2. <property name= "javaFormatter" value= "org.mybatis.generator.api.dom.DefaultJavaFormatter"/>
  3. <!--格式化生成的 XML-->
  4. <property name= "xmlFormatter" value= "org.mybatis.generator.api.dom.DefaultXmlFormatter"/>

plugins标签

可以进行相关的配置。例如配置cache缓存


   
  1. <plugin type= "org.mybatis.generator.plugins.CachePlugin" >
  2. <property name= "cache_eviction" value= "LRU"/>
  3. </plugin>

commentGenerator 标签

生成相关注释


   
  1. <commentGenerator >
  2. <property name= "suppressAllComments" value= "false"/>
  3. <property name= "suppressDate" value= "false"/>
  4. <property name= "addRemarkComments" value= "false"/>
  5. </commentGenerator>

关于作者

我是小小,双鱼座的程序猿,我们下期再见~bye~

END

「 往期文章 」

快速搭建 | 如何快速搭建一个免费的,无限流量的Blog

回来了 | Win10全新界面设计首次曝光,Win7毛玻璃又回来啦!

面试 | 阿里P7级别程序猿亲身告知,不会面试,还想进大厂?做梦吧

扫描二维码

获取更多精彩

编程菜市场

来源:网络(侵删)

图片来源:网络(侵删)

点个在看你最好看


转载:https://blog.csdn.net/melovemingming/article/details/111466027
查看评论
* 以上用户言论只代表其个人观点,不代表本网站的观点或立场