mybatis的逆向工程

来源:互联网 发布:模拟加密狗软件 编辑:程序博客网 时间:2024/05/16 09:06

为了开发更方便mybatis提供了逆向工程,即我们程序员不用编写mapper接口以及mapper.xml文件,这些事情完全可以交给mybatis的工具来完成.

开发步骤:

1)导入mybatis的逆向工程的jar包mybatis-generator-core-1.3.2.jar(去官网下载)+mybatis的jar包(核心包+依赖包)

2)为了使用逆向工程我们需要先定义好数据库,因为逆向工程就是根据数据库表生成的!

这里我使用sql_table.sql 以及sql_data.sql导入到建立好的mybatis数据库(mysql中建立了create database mybatis) 导入的方法就是:source e:/sql_table.sql;source e:/sql_data.sql;进行导入

3)打开逆向工程jar包的文档html主页按照下面的步骤:


之后点击进去将 配置文件的信息复制粘贴到java工程的一个新建的generatorCongig.xml中(这里对其中的做了少数修改)

[html] view plaincopyprint?
  1. <?xml version="1.0" encoding="UTF-8"?>  
  2. <!DOCTYPE generatorConfiguration  
  3.   PUBLIC "-//mybatis.org//DTD MyBatis Generator Configuration 1.0//EN"  
  4.   "http://mybatis.org/dtd/mybatis-generator-config_1_0.dtd">  
  5.   
  6. <generatorConfiguration>  
  7.   
  8.   <context id="testTables" targetRuntime="MyBatis3">  
  9.   <!-- 数据库连接信息 驱动类 连接地址 用户名 密码 -->  
  10.     <jdbcConnection driverClass="com.mysql.jdbc.Driver"  
  11.         connectionURL="jdbc:mysql://localhost:3306/mybatis"  
  12.         userId="root"  
  13.         password="169500">  
  14.     </jdbcConnection>  
  15.   
  16.     <javaTypeResolver >  
  17.       <property name="forceBigDecimals" value="false" />  
  18.     </javaTypeResolver>  
  19.     <!-- 生成po类的位置 -->  
  20.     <javaModelGenerator targetPackage="cn.itcast.ssm.po" targetProject=".\src">  
  21.       <property name="enableSubPackages" value="true" />  
  22.       <property name="trimStrings" value="true" />  
  23.     </javaModelGenerator>  
  24.     <!-- mapper映射文件的生成位置 -->  
  25.     <sqlMapGenerator targetPackage="cn.itcast.ssm.mapper"  targetProject=".\src">  
  26.       <property name="enableSubPackages" value="true" />  
  27.     </sqlMapGenerator>  
  28.     <!-- mapper接口生成的位置 -->  
  29.     <javaClientGenerator type="XMLMAPPER" targetPackage="cn.itcast.ssm.mapper"  targetProject=".\src">  
  30.       <property name="enableSubPackages" value="true" />  
  31.     </javaClientGenerator>  
  32.     <!-- 指定数据库表 -->  
  33.     <table tableName="items"></table>  
  34.     <table tableName="orders"></table>  
  35.     <table tableName="orderdetail"></table>  
  36.     <table tableName="user"></table>  
  37.   
  38.   </context>  
  39. </generatorConfiguration>  
4)找到核心代码(可以生成mapper.xml以及mapper接口)


拷贝其中代码(如下)我写了一个main方法为了可以运行

[html] view plaincopyprint?
  1. package cn.itcast.generator;  
  2.   
  3. import java.io.File;  
  4. import java.io.IOException;  
  5. import java.util.ArrayList;  
  6. import java.util.List;  
  7.   
  8. import org.mybatis.generator.api.MyBatisGenerator;  
  9. import org.mybatis.generator.config.Configuration;  
  10. import org.mybatis.generator.config.xml.ConfigurationParser;  
  11. import org.mybatis.generator.internal.DefaultShellCallback;  
  12.   
  13. public class GeneratorSqlMap {  
  14.     public static void main(String[] args) {  
  15.         GeneratorSqlMap generatorSqlMap=new GeneratorSqlMap();  
  16.         try {  
  17.             generatorSqlMap.generator();  
  18.         } catch (Exception e) {  
  19.             e.printStackTrace();  
  20.         }  
  21.     }  
  22.   
  23.     private void generator() throws Exception {  
  24.         List<String> warnings = new ArrayList<String>();  
  25.            boolean overwrite = true;  
  26.            File configFile = new File("generatorConfig.xml");  
  27.            ConfigurationParser cp = new ConfigurationParser(warnings);  
  28.            Configuration config = cp.parseConfiguration(configFile);  
  29.            DefaultShellCallback callback = new DefaultShellCallback(overwrite);  
  30.            MyBatisGenerator myBatisGenerator = new MyBatisGenerator(config, callback, warnings);  
  31.            myBatisGenerator.generate(null);  
  32.     }  
  33. }  
5)运行上述代码可以看到工程目录中多了两个包:





本文转自:http://blog.csdn.net/u014010769/article/details/47347775#comments


0 0