一 前言
如果使用ibatis数据库,那么在数据库表存在的前提下,model,映射文件,dao类可以自动生成。
二 配置文件
config.xml
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE ibatorConfiguration
PUBLIC "-//Apache Software Foundation//DTD Apache iBATIS Ibator Configuration 1.0//EN"
"http://ibatis.apache.org/dtd/ibator-config_1_0.dtd">
<ibatorConfiguration>
<!-- 中文注释问题, 一定要前后空格 隔开 -->
<!-- 数据库驱动的文件绝对路径 -->
<classPathEntry location="E:\m2\repository\mysql\mysql-connector-java\5.1.6\mysql-connector-java-5.1.6.jar" />
<ibatorContext id="MysqlTables" targetRuntime="Ibatis2Java2">
<jdbcConnection driverClass="com.mysql.jdbc.Driver"
connectionURL="jdbc:mysql://127.0.0.1:3306/solareon?characterEncoding=utf8"
userId="root"
password="root">
</jdbcConnection>
<!-- 配置生成DO文件存放的路径。注:targetProject必须要存在,下同 -->
<javaModelGenerator targetPackage="espressif.lqk.common.model" targetProject="espressif-common/src">
<property name="enableSubPackages" value="true" />
<property name="trimStrings" value="true" />
</javaModelGenerator>
<!-- 配置存放生成的ibatis配置路径 -->
<sqlMapGenerator targetPackage="ibatis" targetProject="espressif-common/src">
<property name="enableSubPackages" value="true" />
</sqlMapGenerator>
<!-- 配置生成DAO及实现类的路径 -->
<daoGenerator type="SPRING" targetPackage="espressif.lqk.common.dao" targetProject="espressif-common/src">
<property name="enableSubPackages" value="true" />
</daoGenerator>
<!-- 配置需要生成的表,如果表名及字段名不需要特殊处理,直接下面这样配置就可以。注:如果是ORACLE必须指定schema -->
<!-- 这里可以配置多个表名,至少一个表 -->
<table tableName="device"></table>
</ibatorContext>
</ibatorConfiguration>
##三 生成文件
下载jar包,配置好数据库,然后就可以
java -jar ibator-1.2.1.681.jar -configfile config.xml
/e/ibator
目录内容如下所示:
Bert@MICROSO-MLMJB3J /e/ibator
$ ls -R
.:
config.xml espressif-common ibator-1.2.1.681.jar
./espressif-common:
src
./espressif-common/src:
espressif ibatis
./espressif-common/src/espressif:
lqk
./espressif-common/src/espressif/lqk:
common
./espressif-common/src/espressif/lqk/common:
dao model
./espressif-common/src/espressif/lqk/common/dao:
DeviceDAO.java DeviceDAOImpl.java DeviceInfoDAO.java DeviceInfoDAOImpl.java
./espressif-common/src/espressif/lqk/common/model:
Device.java DeviceExample.java DeviceInfo.java DeviceInfoExample.java
./espressif-common/src/ibatis:
device_SqlMap.xml device_info_SqlMap.xml
四 example文件
传统方式下,我们弄一个查询语句,可能有若干个查询因素。如果我们只用一个查询语句的话,我们可以将这些查询因素都保存在一个map中。类似的,在ibator中,每个model对象对应一个example对象,可以满足对模型基本的查询需求。