Spring Boot + Mybatis + Spring MVC環境配置(二):Mybatis Generator配置
一、在Eclipse中安裝mybatis generator
選單選擇: Help->Eclipse Marketplace
二、 建立generatorConfig.xml配置文件
配置好的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.properties" /> <!-- context:生成一組物件的環境 id:必選,上下文id,用於在生成錯誤時提示 defaultModelType:指定生成物件的樣式 1,conditional:類似hierarchical; 2,flat:所有內容(主鍵,blob)等全部生成在一個物件中; 3,hierarchical:主鍵生成一個XXKey物件(key class),Blob等單獨生成一個物件,其他簡單屬性在一個物件中(record class) targetRuntime: 1,MyBatis3:預設的值,生成基於MyBatis3.x以上版本的內容,包括XXXBySample; 2,MyBatis3Simple:類似MyBatis3,只是不生成XXXBySample; introspectedColumnImpl:類全限定名,用於擴充套件MBG --> <context id="context1" defaultModelType="hierarchical" targetRuntime="MyBatis3Simple"> <!-- 自動識別資料庫關鍵字,預設false,如果設定為true,根據SqlReservedWords中定義的關鍵字列表; 一般保留預設值,遇到資料庫關鍵字(Java關鍵字),使用columnOverride覆蓋 --> <property name="autoDelimitKeywords" value="false" /> <!-- 生成的Java檔案的編碼 --> <property name="javaFileEncoding" value="UTF-8" /> <!-- 格式化java程式碼 --> <property name="javaFormatter" value="org.mybatis.generator.api.dom.DefaultJavaFormatter" /> <!-- 格式化XML程式碼 --> <property name="xmlFormatter" value="org.mybatis.generator.api.dom.DefaultXmlFormatter" /> <!-- beginningDelimiter和endingDelimiter:指明資料庫的用於標記資料庫物件名的符號,比如ORACLE就是雙引號,MYSQL預設是`反引號; --> <property name="beginningDelimiter" value="`" /> <property name="endingDelimiter" value="`" /> <!-- 實現自定義的程式碼生成器plugin --> <!-- <plugin type="org.mybatis.PaginationPlugin" /> --> <commentGenerator> <property name="suppressDate" value="true" /> <!-- 是否去除自動生成的註釋 true:是 : false:否 --> <property name="suppressAllComments" value="true" /> </commentGenerator> <!-- 資料庫連線URL,使用者名稱,密碼 --> <jdbcConnection driverClass="${spring.datasource.driver-class-name}" connectionURL="${spring.datasource.url}" userId="${spring.datasource.username}" password="${spring.datasource.password}"> <property name="nullCatalogMeansCurrent" value="true" /> </jdbcConnection> <!-- java型別處理器 用於處理DB中的型別到Java中的型別,預設使用JavaTypeResolverDefaultImpl; 注意一點,預設會先嚐試使用Integer,Long,Short等來對應DECIMAL和 NUMERIC資料型別; --> <javaTypeResolver type="org.mybatis.generator.internal.types.JavaTypeResolverDefaultImpl"> <!-- true:使用BigDecimal對應DECIMAL和 NUMERIC資料型別 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> <!--生成模型的包名和位置 --> <javaModelGenerator targetPackage="com.kai.demo.model" targetProject="demo/src/main/java"> <!-- for MyBatis3/MyBatis3Simple 自動為每一個生成的類建立一個構造方法,構造方法包含了所有的field;而不是使用setter; --> <property name="constructorBased" value="false" /> </javaModelGenerator> <!--對映檔案的包名和位置 --> <sqlMapGenerator targetPackage="com.kai.demo.mapper" targetProject="demo/src/main/java" /> <!--DAO的包名和位置 --> <javaClientGenerator targetPackage="com.kai.demo.dao" targetProject="demo/src/main/java" type="XMLMAPPER"> <!-- 是否允許建立子包,對應Mysql的Schema --> <property name="enableSubPackages" value="true" /> </javaClientGenerator> <!--要生成哪些表 --> <table schema="mybatis" tableName="%" enableSelectByExample="false" enableDeleteByExample="false" enableCountByExample="false" enableUpdateByExample="false" selectByExampleQueryId="false"> </table> </context> </generatorConfiguration>
(我也不知道為什麼itpub的xml片段插入之後,結尾會多了點,正確的xml幾位應該是)
選中generatorConfig.xml檔案,右鍵選單Run As->Run Mybatis Generator 生成Model、Dao、Mapper
建立User表的SQL:
DROP TABLE IF EXISTS `user`; CREATE TABLE `user` ( `id` int(11) NOT NULL AUTO_INCREMENT, `username` varchar(20) DEFAULT NULL, `password` varchar(50) DEFAULT NULL, `email` varchar(50) DEFAULT NULL, `nickname` varchar(50) DEFAULT NULL, `regtime` datetime DEFAULT NULL ON UPDATE CURRENT_TIMESTAMP, PRIMARY KEY (`id`) ) ENGINE=InnoDB AUTO_INCREMENT=2 DEFAULT CHARSET=utf8;
四、對UserMapper進行單元測試
在專案的src/test/java下建立類檔案UserMapperTest.java
@RunWith(SpringRunner.class) @SpringBootTest public class UserMapperTest { @Autowired private UserMapper userMapper; @Test public void testQuery() throws Exception { User user = userMapper.selectByPrimaryKey(1); System.out.println(user.toString()); } }
右鍵Run As->JUnit Test
完整環境下載地址: https://github.com/CatherineHu/Spring-Boot-Mybatis-MVC
來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/10314474/viewspace-2200332/,如需轉載,請註明出處,否則將追究法律責任。
相關文章
- Spring Boot + Mybatis + Spring MVC環境配置(三):DataSource配置Spring BootMyBatisMVC
- Spring Boot + Mybatis + Spring MVC環境配置(四):MVC框架搭建Spring BootMyBatisMVC框架
- Spring Boot + Mybatis + Spring MVC環境配置(五):templates模板使用Spring BootMyBatisMVC
- Spring Boot + Mybatis + Spring MVC環境配置(一) :Spring Boot初始化,依賴新增Spring BootMyBatisMVC
- Spring Boot:Spring Boot配置MybatisSpring BootMyBatis
- IDEA配置SSM(Spring-Spring MVC-MyBatisIdeaSSMSpringMVCMyBatis
- Spring Boot使用MyBatis Generator、SwaggerSpring BootMyBatisSwagger
- Spring boot學習(五)Spring boot整合Mybatis Generator以及PageHelperSpring BootMyBatis
- MyBatis generator配置MyBatis
- MyBatis Spring MapperScannerConfigurer 配置MyBatisSpringAPP
- MyBatis Spring SqlSessionFactoryBean 配置MyBatisSpringSQLSessionBean
- Spring Boot MyBatis配置多種資料庫Spring BootMyBatis資料庫
- 【教程】Spring+Mybatis環境配置多資料來源SpringMyBatis
- Spring Boot - Profile不同環境配置Spring Boot
- SMM(spring +springmvc+mybatis)依賴註解等環境配置SpringMVCMyBatis
- Spring Boot 原始碼分析 資料來源 + Mybatis 配置Spring Boot原始碼MyBatis
- spring boot學習4 多環境配置Spring Boot
- Spring Boot 整合 MyBatisSpring BootMyBatis
- MyBatis Generator 超詳細配置MyBatis
- MyBatis Generator配置及執行MyBatis
- SpringMvc+Spring+mybatis配置檔案SpringMVCMyBatis
- 基於spring boot 及mybatis的web開發環境搭建Spring BootMyBatisWeb開發環境
- Spring boot學習(三) Spring boot整合mybatisSpring BootMyBatis
- Spring boot學習(二) Spring boot基礎配置Spring Boot
- Spring boot入門(二):Spring boot整合MySql,Mybatis和PageHelper外掛Spring BootMySqlMyBatis
- 使用Java程式碼配置MyBatis GeneratorJavaMyBatis
- spring和Mybatis的核心配置檔案SpringMyBatis
- springboot logback配置mybatis 日誌以及多環境配置Spring BootMyBatis
- Spring Boot 2.4 對多環境配置的支援更改Spring Boot
- Spring Boot:Spring Boot配置SwaggerSpring BootSwagger
- Shiro和Spring MVC、Mybatis整合教程SpringMVCMyBatis
- 搭建MSSM框架(Maven+Spring+Spring MVC+MyBatis)SSM框架MavenSpringMVCMyBatis
- Spring Boot —— 整合 MyBatis-PlusSpring BootMyBatis
- Spring Boot 教程 - MyBatis-PlusSpring BootMyBatis
- Spring Boot系列(三):Spring Boot整合Mybatis原始碼解析Spring BootMyBatis原始碼
- Linux系統CentOS 7配置Spring Boot執行環境LinuxCentOSSpring Boot
- Spring Boot & 配置Spring Boot
- Spring Boot + Mybatis 多資料來源配置實現讀寫分離Spring BootMyBatis