MybatisGenerator的使用
在寫程式碼過程中,常常要寫一些簡單的CURD操作,為了能夠把時間用在業務邏輯上,看了Mybatis Generator生成工具,根據官網的文件,改成適合自己使用的生成器。
mybatis generator的配置檔案 如下:
<?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="generator.properties" />
<context id="MySQLContext" targetRuntime="MyBatis3">
<!--設定檔案編碼-->
<property name="javaFileEncoding" value="UTF-8"/>
<!--配置去掉所有生成的註釋-->
<commentGenerator>
<property name="suppressAllComments" value="true" />
</commentGenerator>
<!--設定資料庫連線驅動-->
<jdbcConnection driverClass="${jdbc.driverClass}"
connectionURL="${jdbc.url}"
userId="${jdbc.username}"
password="${jdbc.password}">
</jdbcConnection>
<!--當欄位型別是 DECIMAL或者 NUMERIC時,是否強制轉換為BigDecimal,否的話會自動根據規模的大小選擇合適的型別 -->
<javaTypeResolver >
<property name="forceBigDecimals" value="false" />
</javaTypeResolver>
<!-- 生成模型的包名和位置-->
<javaModelGenerator targetPackage="me.xueyao.model" targetProject=".srcmainjava">
<property name="enableSubPackages" value="true" />
<property name="trimStrings" value="true" />
</javaModelGenerator>
<!-- 生成對映檔案的包名和位置-->
<sqlMapGenerator targetPackage="me.xueyao.mapper" targetProject=".srcmain
esources">
<property name="enableSubPackages" value="true" />
</sqlMapGenerator>
<!-- 生成DAO的包名和位置-->
<javaClientGenerator type="XMLMAPPER" targetPackage="me.xueyao.mapper"
targetProject=".srcmainjava">
<property name="enableSubPackages" value="true" />
</javaClientGenerator>
<!-- 要生成的表 tableName是資料庫中的表名或檢視名 domainObjectName是實體類名,需要根據自己的需求修改-->
<table tableName="candidate" domainObjectName="Candidate" enableCountByExample="false"
enableDeleteByExample="false" enableSelectByExample="false" enableUpdateByExample="false">
<generatedKey column="id" sqlStatement="MySql" identity="true" />
</table>
</context>
</generatorConfiguration>
mybatis generator的執行檔案 如下:
package me.xueyao;
import org.mybatis.generator.api.MyBatisGenerator;
import org.mybatis.generator.config.Configuration;
import org.mybatis.generator.config.xml.ConfigurationParser;
import org.mybatis.generator.internal.DefaultShellCallback;
import java.io.InputStream;
import java.util.ArrayList;
import java.util.List;
/**
* @Description: Mybatis Generator 生成器
* @Author: Simon.Xue
* @Date: 2019/1/18 13:44
*/
public class Generator {
public static void main(String[] args) throws Exception {
//警告資訊集合
List<String> warnings = new ArrayList<String>();
//讀取生成器的配置檔案
InputStream resourceAsStream = Generator.class.getResourceAsStream("/mybatis-generator.xml");
//建立配置解析器
ConfigurationParser configurationParser = new ConfigurationParser(warnings);
//解析配置檔案
Configuration configuration = configurationParser.parseConfiguration(resourceAsStream);
resourceAsStream.close();
//true時,如果有相同的檔案則覆蓋檔案
DefaultShellCallback defaultShellCallback = new DefaultShellCallback(true);
//建立生成器物件
MyBatisGenerator myBatisGenerator = new MyBatisGenerator(configuration, defaultShellCallback, warnings);
//執行生成程式碼
myBatisGenerator.generate(null);
//輸出警告資訊
for (String warning : warnings) {
System.out.println(warning);
}
}
}
原始碼託管在GitHub
相關文章
- MybatisGenerator的Maven外掛配置MyBatisMaven
- Maven環境下MyBatisGenerator 配置MavenMyBatis
- Scrapy框架的使用之Scrapyrt的使用框架
- ActiveMQ的使用及整合spring的使用例項MQSpring
- Docker框架的使用系列教程(四)容器的使用Docker框架
- Urllib庫的使用一---基本使用
- ECharts的使用Echarts
- DbVisualizer的使用
- Typeof的使用
- iview 的使用View
- Trait 的使用AI
- lombok的使用Lombok
- valueForKeyPath的使用
- ThreadLocal的使用thread
- elasticsearch的使用Elasticsearch
- CoreData的使用
- joomla的使用OOM
- sqlmap的使用SQL
- echars的使用
- SVG 的使用SVG
- FlowableAPI的使用API
- pycnblog的使用
- netcat的使用
- jextract的使用
- pinia的使用
- pip 的使用
- DBV 的使用
- Docker的使用Docker
- Promise的使用Promise
- SVN的使用
- EndNote的使用
- git的使用+Git
- git 的使用Git
- Bootstarp的使用boot
- GRPC的使用RPC
- Maven的使用Maven
- Scanner的使用
- @ModelAttribute 的使用