靜態頁面--小企鵝點選諮詢
阿新 • • 發佈:2020-12-20
通過MyBatis逆向工程可以很方便的由資料庫中的表生成我們需要的java程式碼。下面來介紹一下IDEA中mybatis逆向工程建立步驟。
1、建立maven工程,在pom.xml檔案中匯入mybatis逆向工程依賴jar包。
<!-- Mybatisb逆向工程 -->
<!-- https://mvnrepository.com/artifact/org.mybatis.generator/mybatis-generator-core -->
<dependency>
<groupId >org.mybatis.generator</groupId>
<artifactId>mybatis-generator-core</artifactId>
<version>1.3.5</version>
</dependency>
2、在專案資料夾路徑下建立配置檔案mgb.xml
3、在mgb.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>
<context id="DB2Tables" targetRuntime="MyBatis3">
<!--http://mybatis.org/generator/configreference/commentGenerator.html
suppressAllComments值為true,意思是設定生成的程式碼不包含註釋-->
<commentGenerator>
<property name="suppressAllComments" value="true" />
</commentGenerator>
<!--配置資料庫連線
dirverClass:資料庫驅動
connectionURL:連線url
userId:資料庫使用者名稱
password:資料庫密碼
-->
<jdbcConnection driverClass="com.mysql.jdbc.Driver"
connectionURL="jdbc:mysql://localhost:3306/ssm_crud"
userId="root"
password="root">
</jdbcConnection>
<javaTypeResolver >
<property name="forceBigDecimals" value="false" />
</javaTypeResolver>
<!--targetPackage:指定javaBean(實體類)生成的類的所在包
targetProject:指定javaBean(實體類)生成的類的所在專案路徑-->
<javaModelGenerator targetPackage="com.atguigu.crud.bean" targetProject=".\src\main\java">
<property name="enableSubPackages" value="true" />
<property name="trimStrings" value="true" />
</javaModelGenerator>
<!--targetPackage:指定sql對映檔案生成的位置,在mapper資料夾下
targetProject:指定sql對映檔案生成的專案路徑,在resources資料夾下-->
<sqlMapGenerator targetPackage="mapper" targetProject=".\src\main\resources">
<property name="enableSubPackages" value="true" />
</sqlMapGenerator>
<!--targetPackage:指定dao介面程式碼所在的包
targetProject:指定dao介面程式碼所在的專案路徑-->
<javaClientGenerator type="XMLMAPPER" targetPackage="com.atguigu.crud.dao" targetProject=".\src\main\java">
<property name="enableSubPackages" value="true" />
</javaClientGenerator>
<!--table指定每個表的生成策略
tableName:資料庫中的表名
domainObjectName:專案中的實體類名-->
<table tableName="tbl_emp" domainObjectName="Employee"/>
<table tableName="tbl_dept" domainObjectName="Department"/>
</context>
</generatorConfiguration>
4、編寫java測試程式碼,逆向生成程式碼。`
/**
* @Auther: Lenovo
* @Date: 2020/12/19 19:31
* @version: 1.0
* 逆向生成生成bean實體類,dao介面,mapper對映檔案
*/
public class MBGTest {
public static void main(String[] args) throws IOException, XMLParserException, InvalidConfigurationException, SQLException, InterruptedException, SQLException {
List<String> warnings = new ArrayList<String>();
boolean overwrite = true;
File configFile = new File("mbg.xml");
ConfigurationParser cp = new ConfigurationParser(warnings);
Configuration config = cp.parseConfiguration(configFile);
DefaultShellCallback callback = new DefaultShellCallback(overwrite);
MyBatisGenerator myBatisGenerator = new MyBatisGenerator(config, callback, warnings);
myBatisGenerator.generate(null);
}
}
5、執行第4步的main函式,自動生成bean實體類,dao介面檔案,mapper對映檔案。