逆向工程搭建的一般步驟


逆向工程搭建的一般步驟

一、下載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=".\src\main\java">
      <property name="enableSubPackages" value="false" />
      <property name="trimStrings" value="true" />
    </javaModelGenerator>
<!-- 指定sql映射文件  生成的路徑 -->
    <sqlMapGenerator targetPackage="www.nixianggongcheng.com.role.dao" targetProject=".\src\main\java">
      <property name="enableSubPackages" value="false" />
    </sqlMapGenerator>
<!-- 指定DAO接口  生成的位置 -->
    <javaClientGenerator type="XMLMAPPER" targetPackage="www.nixianggongcheng.com.role.dao"  
    targetProject=".\src\main\java">
      <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層中配置文件中實體類與數據庫表的映射關系;


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM