1. 程式人生 > >spring boot 實現 mybatis 自動配置

spring boot 實現 mybatis 自動配置

轉自https://blog.csdn.net/shaohx0518/article/details/76273547

上文說道勤快的人已經可以開始使用spring boot+mybatis了,這次就來說說懶得人怎麼用:

mybatis-generator用過的人都知道,倆字方便,一次配置,到處使用下面就說下spring boot裡邊怎麼配置,pom.xml里加入如下外掛

<plugin>
    <groupId>org.mybatis.generator</groupId>
    <artifactId>mybatis-generator-maven-plugin</artifactId
>
<version>1.3.2</version> <configuration> <verbose>true</verbose> <overwrite>true</overwrite> </configuration> </plugin>
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9

resource目錄下建立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> <properties resource="application.yml" /> <!-- mysql驅動的位置 --> <classPathEntry location="C:\Users\admin\.m2\repository\mysql\mysql-connector-java\5.1.38\mysql-connector-java-5.1.38.jar" /> <context id="Tables" targetRuntime="MyBatis3"
>
<!-- 註釋 --> <commentGenerator> <!-- 是否生成註釋代時間戳 --> <property name="suppressDate" value="true"/> <!-- 是否去除自動生成的註釋 true:是 : false:否 --> <property name="suppressAllComments" value="true"/> </commentGenerator> <!-- JDBC連線 --> <jdbcConnection driverClass="com.mysql.jdbc.Driver" connectionURL="jdbc:mysql://localhost:3306/dbzb" userId="root" password="tiger"> </jdbcConnection> <!-- 非必需,型別處理器,在資料庫型別和java型別之間的轉換控制--> <!-- 預設false,把JDBC DECIMAL 和 NUMERIC 型別解析為 Integer,為 true時把JDBC DECIMAL 和 NUMERIC 型別解析為java.math.BigDecimal --> <javaTypeResolver> <!-- 是否使用bigDecimal, false可自動轉化以下型別(Long, Integer, Short, etc.) --> <property name="forceBigDecimals" value="false" /> </javaTypeResolver> <!-- 生成實體類地址 --> <javaModelGenerator targetPackage="com.shx.dao.model" targetProject="src/main/java"> <!-- 從資料庫返回的值被清理前後的空格 --> <property name="trimStrings" value="true" /> <!-- enableSubPackages:是否讓schema作為包的字尾 --> <property name="enableSubPackages" value="false" /> </javaModelGenerator> <!-- 生成mapper xml檔案 --> <sqlMapGenerator targetPackage="com.shx.dao.mapper" targetProject="src/main/java"> <!-- enableSubPackages:是否讓schema作為包的字尾 --> <property name="enableSubPackages" value="false" /> </sqlMapGenerator> <!-- 生成mapper xml對應Client--> <javaClientGenerator targetPackage="com.shx.dao.mapper" targetProject="src/main/java" type="XMLMAPPER"> <!-- enableSubPackages:是否讓schema作為包的字尾 --> <property name="enableSubPackages" value="false" /> </javaClientGenerator> <!-- 配置表資訊 --> <!-- schema即為資料庫名 tableName為對應的資料庫表 domainObjectName是要生成的實體類 enable*ByExample 是否生成 example類 --> <table schema="t_livetype" tableName="t_livetype" domainObjectName="LiveType" enableCountByExample="false" enableDeleteByExample="false" enableSelectByExample="false" enableUpdateByExample="false"> </table> </context> </generatorConfiguration>
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12
  • 13
  • 14
  • 15
  • 16
  • 17
  • 18
  • 19
  • 20
  • 21
  • 22
  • 23
  • 24
  • 25
  • 26
  • 27
  • 28
  • 29
  • 30
  • 31
  • 32
  • 33
  • 34
  • 35
  • 36
  • 37
  • 38
  • 39
  • 40
  • 41
  • 42
  • 43
  • 44
  • 45
  • 46
  • 47
  • 48
  • 49
  • 50
  • 51
  • 52
  • 53
  • 54
  • 55
  • 56
  • 57
  • 58
  • 59
  • 60
  • 61
  • 62
  • 63
  • 64
  • 65
  • 66
  • 67
  • 68

OK,到此為止大功告成,ide右側maven視窗右鍵run一下就可以了,success之後你需要的model,mapper就都有了,然後把上文提到的application處@MapperScan(basePackages = “com.shx.dao”)和application.yml的 
type-aliases-package: classpath*:com.shx.dao.model 
mapper-locations: classpath*:com.shx.dao.mapper/*.xml 
改成你自己的包路徑就可以了

我這裡之後使用專案  目錄下執行命令: mvn mybatis-generator:generate -e 即可

<!-- mysql驅動的位置 -->改成自己的,對應生成位置改成自己的包

每次重新跑xml都會在原來的內容中新增,所以對於不想改的xml,把<table>去掉