• 逆向工程搭建的一般步骤


    逆向工程搭建的一般步骤

    一、下载jar包:

     

    二、配置逆向工程文件:

    <?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 id="MybatisGenerator" targetRuntime="MyBatis3">
      <!-- 是否去除逆向生成中的注释 true:是;false:否-->
      <commentGenerator>
          <property name="suppressAllComments" value="true" />
      </commentGenerator>
      <!-- 配置数据库连接信息 -->
        <jdbcConnection driverClass="com.mysql.jdbc.Driver" connectionURL="jdbc:mysql://192.168.1.150:3306/cat?characterEncoding=utf8" userId="root"
            password="123456">
        </jdbcConnection>
        <!-- 默认false,把JDBC DECIMAL 和 NUMERIC 类型解析为 Integer,为 true时把JDBC DECIMAL 和   NUMERIC 类型解析为java.math.BigDecimal -->  
        <javaTypeResolver >
          <property name="forceBigDecimals" value="false" />
        </javaTypeResolver>
    <!-- 指定javabean  生成的路径 -->
        <javaModelGenerator targetPackage="www.nixianggongcheng.com.role.model" targetProject=".srcmainjava">
          <property name="enableSubPackages" value="false" />
          <property name="trimStrings" value="true" />
        </javaModelGenerator>
    <!-- 指定sql映射文件  生成的路径 -->
        <sqlMapGenerator targetPackage="www.nixianggongcheng.com.role.dao" targetProject=".srcmainjava">
          <property name="enableSubPackages" value="false" />
        </sqlMapGenerator>
    <!-- 指定DAO接口  生成的位置 -->
        <javaClientGenerator type="XMLMAPPER" targetPackage="www.nixianggongcheng.com.role.dao"  
        targetProject=".srcmainjava">
          <property name="enableSubPackages" value="false" />
        </javaClientGenerator>
    <!-- 指定每个表的生成策略    表名    生成的类名-->
        <table tableName="u_role"></table>
      </context>
    </generatorConfiguration>
    

    三、编写java启动类,执行逆向工程的配置文件,生成数据库中指定表的model和dao层:(注意:启动类中创建File中的路径是从本项目中开始的,需要找到从项目开始写起,直到找到配置文件的路径即可

    public class MyGenerator {
    	public void generate() throws Exception {  
            List<String> warnings = new ArrayList<String>();  
            boolean overwrite = true;  
            File configFile = new File("conf/GeneratorConfig.xml");  
            ConfigurationParser cp = new ConfigurationParser(warnings);  
            Configuration config = cp.parseConfiguration(configFile);  
            DefaultShellCallback callback = new DefaultShellCallback(overwrite);  
            MyBatisGenerator myBatisGenerator = new MyBatisGenerator(config, callback, warnings);  
            myBatisGenerator.generate(null);  
        }  
      
        public static void main(String[] args) throws Exception {  
            try {  
                MyGenerator myGenerator = new MyGenerator();  
                myGenerator.generate();  
            } catch (Exception e) {  
                e.printStackTrace();  
            }  
        }  
    }
    

    四、处理下自动生成的model和dao层:需要非常注意一下事项

    model层中:

    1、实体类中只有属性和set、get方法,需要自己创建空参构造方法、全参构造方法、重写toString等方法;

    dao层中:

    1、接口中的方法最好是全部删掉,根据自己的需要重新写自己的方法;

    2、配置文件中的实体类与数据库映射的关系中javaType属性最好删掉,不然有可能会对ssm、ssh框架产生异常;配置文件中的sql最好全部删掉,根据自己的需要重新写sql语句;

    五、将处理的model和dao层复制到当前工作的项目中去:

    将经过处理的model和dao层中的类和配置文件,复制到当前工作开发的项目中去,这样可以快速、高效的开发项目;

    总结:通过逆向工程主要是获取model中的实体类和dao层中配置文件中实体类与数据库表的映射关系;

  • 相关阅读:
    UML常见工具之Powerdesigner
    在webForm中WebRequest\WebClient\WebBrowser获取远程页面源码的三种方式(downmoon)
    忍不住了,我来说两句,从一道面试题说起
    《UML用户指南第二版》再次温读笔记(一)(downmoon)
    Database Project requires local SQL 2005 instance的解决方案(downmoon)
    JDBC Driver For SQL2000/2005/2008
    服务器更新dll后导致网站崩溃,重启iis也无效的一种解决方案(downmoon)
    白孩儿一个网上流传的故事[生活感悟]
    vs2008中js的语法提示及修正功能(downmoonn)
    Contoso 大学 2 – 实现基本的增删改查
  • 原文地址:https://www.cnblogs.com/lsy-blogs/p/7569243.html
Copyright © 2020-2023  润新知