MyBatis逆向工程基本操作及代碼實(shí)例
回想一下MyBatis的基本操作,它需要實(shí)體類,自定義mapper接口以及mapper.xml配置文件。為了避免繁瑣的工作量,MyBatis Generator,簡(jiǎn)稱MBG,可自動(dòng)生成框架所需的這些依賴,同時(shí)支持基本的CRUD操作,但是需要注意,MBG一般不要重復(fù)執(zhí)行,否則會(huì)出問(wèn)題。
下面是引入MBG的基本操作:
一、新建maven項(xiàng)目,引入依賴:
<dependencies> <dependency> <groupId>org.mybatis</groupId> <artifactId>mybatis</artifactId> <version>3.5.5</version> </dependency> <dependency> <groupId>mysql</groupId> <artifactId>mysql-connector-java</artifactId> <version>8.0.20</version> </dependency> <dependency> <groupId>org.mybatis.generator</groupId> <artifactId>mybatis-generator-core</artifactId> <version>1.4.0</version> </dependency></dependencies>
二、創(chuàng)建mbg配置文件:
<?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 targetRuntime='MyBatis3'> <!-- 連接池 --> <jdbcConnectiondriverClass='com.mysql.cj.jdbc.Driver'connectionURL='jdbc:mysql://localhost:3306/demo'userId='root'password='' ></jdbcConnection> <!-- 配置JavaBean生成策略 --> <javaModelGenerator targetPackage='com.wts.entity' targetProject='./src/main/java'></javaModelGenerator> <!-- 配置SQL映射文件生成策略 --> <sqlMapGenerator targetPackage='com.wts.entity' targetProject='./src/main/java'></sqlMapGenerator> <!-- 配置Mapper接口的生成策略 --> <javaClientGenerator targetPackage='com.wts.entity' targetProject='./src/main/java'></javaClientGenerator> <table tableName='user' domainObjectName='User'></table> </context></generatorConfiguration>
三、運(yùn)行Generator:
public class MyTest { public static void main(String[] args) { List<String> warnings = new ArrayList<>(); File configFile = new File(MyTest.class.getResource('generatorConfig.xml').getFile()); ConfigurationParser configurationParser = new ConfigurationParser(warnings); Configuration configuration = null; try { configuration = configurationParser.parseConfiguration(configFile); } catch (IOException e) { e.printStackTrace(); } catch (XMLParserException e) { e.printStackTrace(); } DefaultShellCallback callback = new DefaultShellCallback(true); MyBatisGenerator myBatisGenerator = null; try { myBatisGenerator = new MyBatisGenerator(configuration, callback, warnings); } catch (InvalidConfigurationException e) { e.printStackTrace(); } try { myBatisGenerator.generate(null); } catch (SQLException e) { e.printStackTrace(); } catch (IOException e) { e.printStackTrace(); } catch (InterruptedException e) { e.printStackTrace(); } }}
這都是固定寫法,了解一下即可。
以上就是本文的全部?jī)?nèi)容,希望對(duì)大家的學(xué)習(xí)有所幫助,也希望大家多多支持好吧啦網(wǎng)。
相關(guān)文章:
1. 淺談MySQL之select優(yōu)化方案2. SQL語(yǔ)句如何實(shí)現(xiàn)超簡(jiǎn)單的多表查詢3. 一文教會(huì)你配置使用Navicat或PLSQL可視化工具遠(yuǎn)程連接Oracle4. Navicat連接Oracle數(shù)據(jù)庫(kù)的詳細(xì)步驟與注意事項(xiàng)5. SQL Server中T-SQL標(biāo)識(shí)符介紹與無(wú)排序生成序號(hào)的方法6. 如何利用MySQL查詢varbinary中存儲(chǔ)的數(shù)據(jù)7. MySQL找出未提交事務(wù)的SQL實(shí)例淺析8. 淺談mybatis 樂(lè)觀鎖實(shí)現(xiàn),解決并發(fā)問(wèn)題9. SQL Server跨服務(wù)器操作數(shù)據(jù)庫(kù)的圖文方法(LinkedServer)10. Mysql命令行連接遠(yuǎn)程/本地?cái)?shù)據(jù)庫(kù)詳解
