spring boot 實現 mybatis 自動配置
阿新 • • 發佈:2019-02-19
轉自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>去掉