您好,登錄后才能下訂單哦!
小編給大家分享一下如何解決Mybatis Generator將tinyint映射為Byte和Boolean的問題,相信大部分人都還不怎么了解,因此分享這篇文章給大家參考一下,希望大家閱讀完這篇文章后大有收獲,下面讓我們一起去了解一下吧!
spring boot 2.1.x
mybatis
tk.mybatis
(1) 新建以下類
public class CustomerJavaTypeResolver extends JavaTypeResolverDefaultImpl { public CustomerJavaTypeResolver() { super(); //把數(shù)據(jù)庫的 TINYINT 映射成 Integer super.typeMap.put(Types.TINYINT, new JavaTypeResolverDefaultImpl.JdbcTypeInformation("TINYINT", new FullyQualifiedJavaType(Integer.class.getName()))); } }
(2)在pom.xml
中加入
<build> <plugins> <plugin> <groupId>org.mybatis.generator</groupId> <artifactId>mybatis-generator-maven-plugin</artifactId> <version>1.3.6</version> <dependencies> <dependency> <groupId>mysql</groupId> <artifactId>mysql-connector-java</artifactId> <version>5.1.29</version> </dependency> <!--<dependency> <groupId>org.mybatis.generator</groupId> <artifactId>mybatis-generator-core</artifactId> <version>1.3.6</version> </dependency>--> <dependency> <groupId>com.taco.cloud</groupId> <artifactId>-generator-core</artifactId> <version>1.0-SNAPSHOT</version> </dependency> <dependency> <groupId>tk.mybatis</groupId> <artifactId>mapper</artifactId> <version>4.1.5</version> </dependency> </dependencies> <!--<executions> <execution> <id>Generate MyBatis Artifacts</id> <phase>package</phase> <goals> <goal>generate</goal> </goals> </execution> </executions>--> <configuration> <!--允許移動生成的文件 --> <verbose>true</verbose> <!-- 是否覆蓋 --> <overwrite>true</overwrite> <!-- 自動生成的配置 --> <configurationFile> src/main/resources/mybatis-generator.xml</configurationFile> </configuration> </plugin> </plugins> </build>
(3)修改mybatis-generator.xml
文件,加入
<javaTypeResolver type="com.taco.springcloud.generator.CustomerJavaTypeResolver"> <!-- true:使用BigDecimal對應DECIMAL和 NUMERIC數(shù)據(jù)類型 false:默認, scale>0;length>18:使用BigDecimal; scale=0;length[10,18]:使用Long; scale=0;length[5,9]:使用Integer; scale=0;length<5:使用Short; --> <property name="forceBigDecimals" value="false"/> </javaTypeResolver>
JDBC的URL增加 tinyInt1isBit=false
參數(shù),注意參數(shù)名區(qū)分大小寫,否則不生效
例如:jdbc:mysql://${ucmha.proxy1_2.host}/${db.mysql.db}?tinyInt1isBit=false
用tinyint(2)代替
以上是“如何解決Mybatis Generator將tinyint映射為Byte和Boolean的問題”這篇文章的所有內(nèi)容,感謝各位的閱讀!相信大家都有了一定的了解,希望分享的內(nèi)容對大家有所幫助,如果還想學習更多知識,歡迎關(guān)注億速云行業(yè)資訊頻道!
免責聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點不代表本網(wǎng)站立場,如果涉及侵權(quán)請聯(lián)系站長郵箱:is@yisu.com進行舉報,并提供相關(guān)證據(jù),一經(jīng)查實,將立刻刪除涉嫌侵權(quán)內(nèi)容。