最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

使用Mybatis Generator結(jié)合Ant腳本快速自動(dòng)生成Model、Mapper等文件的方法

 更新時(shí)間:2016年06月30日 10:45:13   作者:pangfc  
這篇文章主要介紹了使用Mybatis Generator結(jié)合Ant腳本快速自動(dòng)生成Model、Mapper等文件的方法的相關(guān)資料,需要的朋友可以參考下

MyBatis簡(jiǎn)介:

MyBatis是一個(gè)支持普通SQL查詢(xún),存儲(chǔ)過(guò)程和高級(jí)映射的優(yōu)秀持久層框架。MyBatis消除了幾乎所有的JDBC代碼和參數(shù)的手工設(shè)置以及對(duì)結(jié)果集的檢索封裝。MyBatis可以使用簡(jiǎn)單的XML或注解用于配置和原始映射,將接口和Java的POJO(Plain Old Java Objects,普通的Java對(duì)象)映射成數(shù)據(jù)庫(kù)中的記錄。

相關(guān)閱讀:MyBatis入門(mén)學(xué)習(xí)教程(一)-MyBatis快速入門(mén)

使用過(guò)Mybatis的同學(xué)都知道,針對(duì)每一個(gè)項(xiàng)目中使用到的數(shù)據(jù)庫(kù)表都需要建立其對(duì)應(yīng)的數(shù)據(jù)庫(kù)增刪改查xxxMapper.xml文件、實(shí)體類(lèi)xxx.java文件以及其他類(lèi)用來(lái)調(diào)用進(jìn)行數(shù)據(jù)庫(kù)操作的xxxMapper.java文件。在開(kāi)始學(xué)習(xí)Mybatis時(shí),我相信不少人都是通過(guò)手動(dòng)來(lái)建立這些文件的。毫無(wú)疑問(wèn),如果項(xiàng)目比較大的話還通過(guò)手動(dòng)建立這些文件效率是非常低的,這時(shí)我們可以通過(guò)mybatis-generator來(lái)自動(dòng)生成這些文件。但是,這個(gè)工具默認(rèn)是以命令行的形式來(lái)生成相關(guān)文件的,因此我們可以通過(guò)寫(xiě)一個(gè)Ant腳本,每次需要建立這些文件時(shí)在eclipse中執(zhí)行一下這個(gè)Ant腳本就可以自動(dòng)生成了。完整步驟如下:

一 導(dǎo)入相關(guān)jar包

要想使用“mybatis-generator”需要在web項(xiàng)目的lib中導(dǎo)入對(duì)應(yīng)的一個(gè)mybatis-generator-1.3.x.jar文件,Github上的下載地址:mybatis-generator的jar包下載

二 配置mybatis-generator的配置文件

(1)首先在項(xiàng)目中新建幾個(gè)包用于存放對(duì)應(yīng)的文件:

由上圖可以看出,src/main/java用于存放Java源代碼;src/main/env/dev用于存放開(kāi)發(fā)環(huán)境下的配置文件(如:jdbc,緩存,日志等);src/main/resources用于存放通用的一些配置文件,在這里我們自動(dòng)生成的Mapper.xml文件就存放在這個(gè)路徑下;src/test/java表示測(cè)試代碼,這里不管

注:如何在eclipse中添加這些源文件夾?

(2)在項(xiàng)目根目錄下新建generatorConfig.xml和build_mybatis.xml:

這兩個(gè)文件分別是“mybatis-generator”的配置文件和自動(dòng)化的Ant腳本,在項(xiàng)目中的路徑如下:

i)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ù)驅(qū)動(dòng) -->
<classPathEntry
location="WebContent/WEB-INF/lib/mysql-connector-java-5.1.26-bin.jar" />
<context id="DB2Tables" targetRuntime="MyBatis3">
<commentGenerator>
<property name="suppressAllComments" value="true" /><!-- 是否取消注釋 -->
<property name="suppressDate" value="true" /> <!-- 是否生成注釋代時(shí)間戳 -->
</commentGenerator>
<!-- 數(shù)據(jù)庫(kù)連接信息 -->
<jdbcConnection driverClass="com.mysql.jdbc.Driver"
connectionURL="jdbc:mysql://127.0.0.1:3306/ehcache_db" userId="root"
password="root">
</jdbcConnection>
<!-- 只有一個(gè)屬于forceBigDecimals,默認(rèn)false。 如果字段精確超過(guò)0,生成BigDecimal 如果字段精確是0,總長(zhǎng)度10-18生成Long;如果字段精確是0, 
總長(zhǎng)5-9生成Integer; 如果字段精確是0,總長(zhǎng)小于5生成Short; 如果forceBigDecimals為true,統(tǒng)一生成BigDecimal -->
<javaTypeResolver>
<!-- 是否使用bigDecimal, false可自動(dòng)轉(zhuǎn)化以下類(lèi)型(Long, Integer, Short, etc.) -->
<property name="forceBigDecimals" value="false" />
</javaTypeResolver>
<!--生成Model.java文件 -->
<javaModelGenerator targetPackage="cn.zifangsky.model"
targetProject="src/main/java">
<!-- enableSubPackages:是否讓schema作為包的后綴 -->
<property name="enableSubPackages" value="false" />
<!-- 是否針對(duì)string類(lèi)型的字段在set的時(shí)候進(jìn)行trim調(diào)用 -->
<property name="trimStrings" value="true" />
</javaModelGenerator>
<!-- 生成Mapper.xml文件 -->
<sqlMapGenerator targetPackage="sqlmaps"
targetProject="src/main/resources">
<!-- enableSubPackages:是否讓schema作為包的后綴 -->
<property name="enableSubPackages" value="false" />
</sqlMapGenerator>
<!-- 生成Mapper.java文件,即dao層 -->
<javaClientGenerator type="XMLMAPPER"
targetPackage="cn.zifangsky.mapper" targetProject="src/main/java">
<property name="enableSubPackages" value="false" />
</javaClientGenerator>
<!-- 待生成的數(shù)據(jù)庫(kù)中的表名,生成一個(gè)表對(duì)應(yīng)的Java和xml文件就需要配置一段 -->
<table tableName="user" domainObjectName="User"
enableCountByExample="false" enableUpdateByExample="false"
enableDeleteByExample="false" enableSelectByExample="false"
selectByExampleQueryId="false">
</table>
</context>
</generatorConfiguration>

注:需要修改的一些地方可以參照我上面的注釋進(jìn)行修改,同時(shí)別忘了數(shù)據(jù)驅(qū)動(dòng)的jar包

ii)build_mybatis.xml:

<project default="genfiles" basedir=".">
<property name="generated.source.dir" value="${basedir}" />
<path id="ant.run.lib.path">
<pathelement location="${basedir}/WebContent/WEB-INF/lib/mybatis-generator-core-1.3.2.jar"/>
</path>
<target name="genfiles" description="Generate the files">
<taskdef name="mbgenerator" classname="org.mybatis.generator.ant.GeneratorAntTask" classpathref="ant.run.lib.path"/>
<mbgenerator overwrite="true" configfile="generatorConfig.xml" verbose="false">
<propertyset>
<propertyref name="generated.source.dir" />
</propertyset>
</mbgenerator>
</target>
</project>

上面的代碼就兩個(gè)地方需要注意:一是“mybatis-generator”的jar包,二是需要對(duì)應(yīng)的“generatorConfig.xml”文件

注:如果對(duì)Ant腳本不太熟悉的話,可以參考下我寫(xiě)的這篇文章:http://m.fzitv.net/article/87674.htm

三 測(cè)試

進(jìn)行效果測(cè)試時(shí),只需要把“build_mybatis.xml”這個(gè)文件拖到Ant視圖中,然后點(diǎn)擊執(zhí)行這個(gè)腳本就可以自動(dòng)生成我們需要的文件了,最后就是刷新一下項(xiàng)目結(jié)構(gòu)就可以看到文件了,效果如下:

注:我測(cè)試使用到的數(shù)據(jù)庫(kù)數(shù)據(jù):

SET FOREIGN_KEY_CHECKS=0;
-- ----------------------------
-- Table structure for user
-- ----------------------------
DROP TABLE IF EXISTS `user`;
CREATE TABLE `user` (
`id` int(11) NOT NULL AUTO_INCREMENT,
`name` varchar(32) DEFAULT NULL,
`password` varchar(64) DEFAULT NULL,
`email` varchar(64) DEFAULT NULL,
`birthday` date DEFAULT NULL,
PRIMARY KEY (`id`)
) ENGINE=InnoDB AUTO_INCREMENT=4 DEFAULT CHARSET=utf8;
-- ----------------------------
-- Records of user
-- ----------------------------
INSERT INTO `user` VALUES ('1', 'admin', '123456', 'admin@qq.com', '2000-01-02');
INSERT INTO `user` VALUES ('2', 'test', '1234', 'test@zifangsky.cn', '1990-12-12');
INSERT INTO `user` VALUES ('3', 'xxxx', 'xx', 'xx@zifangsky.cn', '1723-06-21');

以上所述是小編給大家介紹的使用Mybatis Generator結(jié)合Ant腳本快速自動(dòng)生成Model、Mapper等文件的方法,希望對(duì)大家有所幫助,如果大家有任何疑問(wèn)請(qǐng)給我留言,小編會(huì)及時(shí)回復(fù)大家的。在此也非常感謝大家對(duì)腳本之家網(wǎng)站的支持!

相關(guān)文章

最新評(píng)論

潢川县| 柞水县| 五家渠市| 郁南县| 墨玉县| 策勒县| 札达县| 沽源县| 合作市| 玉门市| 白银市| 博野县| 广南县| 什邡市| 黄石市| 河曲县| 甘孜县| 怀集县| 永嘉县| 方正县| 黔西县| 新田县| 翼城县| 三台县| 灯塔市| 江北区| 上犹县| 隆尧县| 晴隆县| 喀喇沁旗| 府谷县| 武功县| 泽州县| 桂林市| 阜阳市| 怀来县| 夏邑县| 宣威市| 尉氏县| 白城市| 四川省|