国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁(yè) > 開(kāi)發(fā) > Java > 正文

MyBatis的逆向工程詳解

2024-07-14 08:41:54
字體:
來(lái)源:轉(zhuǎn)載
供稿:網(wǎng)友

一:什么是逆行工程。

MyBatis是一款優(yōu)秀的持久層框架,它支持定制化SQL、存儲(chǔ)過(guò)程以及高級(jí)映射。MyBatis 避免了幾乎所有的 JDBC 代碼和手動(dòng)設(shè)置參數(shù)以及獲取結(jié)果集。MyBatis 可以使用簡(jiǎn)單的 XML 或注解來(lái)配置和映射原生信息,將接口和 Java 的 POJOs(Plain Old Java Objects,普通的 Java對(duì)象)映射成數(shù)據(jù)庫(kù)中的記錄。

當(dāng)數(shù)據(jù)庫(kù)表比較多的時(shí)候,重復(fù)的創(chuàng)建pojo對(duì)象和簡(jiǎn)單的數(shù)據(jù)庫(kù)表的(CRUD)操作的mapper,效率低,官方給出了使用mybatis Generator用來(lái)根據(jù)數(shù)據(jù)庫(kù)表逆向生成pojo和mapper文件,極大的方便開(kāi)發(fā)。

二:簡(jiǎn)單教程

maven的pom.xml中添加插件

 <packaging>jar</packaging><dependencies>  <!-- 添加對(duì)mybatis的依賴 -->  <dependency>   <groupId>org.mybatis</groupId>   <artifactId>mybatis</artifactId>  </dependency>  <dependency>   <groupId>org.mybatis</groupId>   <artifactId>mybatis-spring</artifactId>  </dependency>  <dependency>   <groupId>com.github.miemiedev</groupId>   <artifactId>mybatis-paginator</artifactId>  </dependency>  <dependency>   <groupId>com.github.pagehelper</groupId>   <artifactId>pagehelper</artifactId>  </dependency>  <!-- MySql -->  <dependency>   <groupId>mysql</groupId>   <artifactId>mysql-connector-java</artifactId>  </dependency>  <!-- 連接池 -->  <dependency>   <groupId>com.alibaba</groupId>   <artifactId>druid</artifactId>  </dependency>  <dependency>   <groupId>org.mybatis.generator</groupId>   <artifactId>mybatis-generator-core</artifactId>   <version>1.3.6</version>  </dependency> </dependencies> <build>  <plugins>   <!-- mybatis逆向工程 -->   <plugin>    <groupId>org.mybatis.generator</groupId>    <artifactId>mybatis-generator-maven-plugin</artifactId>    <version>1.3.7</version>    <configuration>     <!--配置文件的位置-->     <configurationFile>src/main/resources/generatorConfig.xml</configurationFile>     <verbose>true</verbose>     <overwrite>true</overwrite>    </configuration>   </plugin>  </plugins> </build>

創(chuàng)建配置文件 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> <!--引入數(shù)據(jù)庫(kù)配置文件方便修改--> <properties resource="jdbc.properties"/> <!--數(shù)據(jù)庫(kù)驅(qū)動(dòng)文件 需要修改 TODO--> <classPathEntry   location="/Volumes/Tool/JAVA_Tool/maven/Maven_Repository/mysql/mysql-connector-java/5.1.32/mysql-connector-java-5.1.32.jar"/> <context id="context" targetRuntime="MyBatis3Simple">  <commentGenerator>   <!-- 是否去除自動(dòng)生成的注釋,true:是;false:否 -->   <property name="suppressAllComments" value="true"/>   <property name="suppressDate" value="false"/>  </commentGenerator>  <!--數(shù)據(jù)庫(kù)連接的信息:驅(qū)動(dòng)類、連接地址、用戶名、密碼 -->  <jdbcConnection driverClass="${jdbc.driverClassName}"      connectionURL="${jdbc.url}"      userId="${jdbc.username}"      password="${jdbc.password}"/>  <!--默認(rèn)false,把JDBC DECIMAL 和 NUMERIC 類型解析為 Integer,-->  <!--為 true時(shí)把JDBC DECIMAL 和 NUMERIC 類型解析為java.math.BigDecimal -->  <!-- 非必需,類型處理器,在數(shù)據(jù)庫(kù)類型和java類型之間的轉(zhuǎn)換控制-->  <javaTypeResolver>   <property name="forceBigDecimals" value="false"/>  </javaTypeResolver>  <!--生成PO類的位置 配置生成的實(shí)體包-->  <!--targetPackage:生成的實(shí)體包位置,默認(rèn)存放在src目錄下-->  <!--targetProject:相對(duì)路徑 路徑拼接結(jié)果 src/main/java/one/domain -->  <javaModelGenerator targetPackage="one.domain" targetProject="src/main/java">   <!-- enableSubPackages:是否讓schema作為包的后綴 -->   <property name="enableSubPackages" value="false"/>   <!-- 從數(shù)據(jù)庫(kù)返回的值被清理前后的空格 -->   <property name="trimStrings" value="true"/>  </javaModelGenerator>  <!-- 實(shí)體包對(duì)應(yīng)映射文件位置及名稱,默認(rèn)存放在src目錄下 同上 -->  <sqlMapGenerator targetPackage="MapperXml" targetProject="src/main/resources">   <!-- enableSubPackages:是否讓schema作為包的后綴 -->   <property name="enableSubPackages" value="false"/>  </sqlMapGenerator>  <!--targetPackage:mapper接口生成的位置-->  <javaClientGenerator targetPackage="one.mapper" type="XMLMAPPER" targetProject="src/main/java">   <!-- enableSubPackages:是否讓schema作為包的后綴 -->   <property name="enableSubPackages" value="false"/>  </javaClientGenerator>  <!--配置表-->  <!--schema:不用填寫-->  <!--tableName: 表名 TODO-->  <!--enableCountByExample、enableSelectByExample、enableDeleteByExample、enableUpdateByExample、selectByExampleQueryId:-->  <!--去除自動(dòng)生成的注釋例子-->  <table tableName="tb_user" enableCountByExample="false" enableDeleteByExample="false"    enableSelectByExample="false" enableUpdateByExample="false"/> </context></generatorConfiguration>

運(yùn)行Generator類即可生成

我已經(jīng)做好項(xiàng)目了 下載即可運(yùn)行 

以上就是本文的全部?jī)?nèi)容,希望對(duì)大家的學(xué)習(xí)有所幫助,也希望大家多多支持VeVb武林網(wǎng)。


注:相關(guān)教程知識(shí)閱讀請(qǐng)移步到JAVA教程頻道。
發(fā)表評(píng)論 共有條評(píng)論
用戶名: 密碼:
驗(yàn)證碼: 匿名發(fā)表
主站蜘蛛池模板: 新和县| 柏乡县| 揭阳市| 山西省| 抚松县| 珠海市| 桑植县| 洪雅县| 贵南县| 乐亭县| 沁阳市| 唐河县| 诏安县| 永嘉县| 壤塘县| 常德市| 弥勒县| 毕节市| 鹰潭市| 怀集县| 枣强县| 龙岩市| 南皮县| 靖宇县| 同江市| 东乡县| 陇西县| 阿图什市| 临洮县| 宁晋县| 木兰县| 平邑县| 抚州市| 兴安县| 九寨沟县| 大石桥市| 自治县| 五峰| 讷河市| 班玛县| 常州市|