<ruby id="bdb3f"></ruby>

    <p id="bdb3f"><cite id="bdb3f"></cite></p>

      <p id="bdb3f"><cite id="bdb3f"><th id="bdb3f"></th></cite></p><p id="bdb3f"></p>
        <p id="bdb3f"><cite id="bdb3f"></cite></p>

          <pre id="bdb3f"></pre>
          <pre id="bdb3f"><del id="bdb3f"><thead id="bdb3f"></thead></del></pre>

          <ruby id="bdb3f"><mark id="bdb3f"></mark></ruby><ruby id="bdb3f"></ruby>
          <pre id="bdb3f"><pre id="bdb3f"><mark id="bdb3f"></mark></pre></pre><output id="bdb3f"></output><p id="bdb3f"></p><p id="bdb3f"></p>

          <pre id="bdb3f"><del id="bdb3f"><progress id="bdb3f"></progress></del></pre>

                <ruby id="bdb3f"></ruby>

                ThinkChat2.0新版上線,更智能更精彩,支持會話、畫圖、視頻、閱讀、搜索等,送10W Token,即刻開啟你的AI之旅 廣告
                # 開發插件 插件可用于修改或添加到由MyBatis Generator 生成的對象。插件必須實現`org.mybatis.generator.api.Plugin`接口 。插件接??口包含許多在代碼生成過程的不同階段被調用的方法。任何特定的插件通常不需要實現整個接口。因此,大多數插件應擴展適配器類`org.mybatis.generator.api.PluginAdapter` 。適配器類提供基本的插件支持,并為大多數的接口方法(類似于Swing適配器類)提供了空操作的方法。 MyBatis Generator 提供了幾個插件(都在包`org.mybatis.generator.plugins`下 )。所提供的插件展示了不同類型的可以通過插件完成的任務。插件的源代碼是可以下載的,也可以在線瀏覽[這里](http://mybatis.googlecode.com/svn/sub-projects/generator/trunk/core/mybatis-generator-core/src/main/java/org/mybatis/generator/plugins/) 。 ## 插件的生命周期 插件有一個生命周期。插件在代碼生成過程的初始化期間創建并且在這個過程中的不同階段被調用。下面的列表顯示了插件的基本生命周期: 1. 插件通過默認的構造函數創建 2. `setContext`方法被調用 3. `setProperties`方法被調用 4. `validate`方法被調用。如果該方法返回`false` ,那么插件中的其他方法都不會再被調用。 5. 對于配置中的每個表: 1. `initialized`方法被調用 2. Java客戶端的方法:&lt;sup&gt;1,2&lt;/sup&gt; 1. `clientXXXMethodGenerated(Method, TopLevelClass, IntrospectedTable)` - 當Java客戶端實現類生成的時候這些方法被調用. 2. `clientXXXMethodGenerated(Method, Interface, IntrospectedTable)` -當Java客戶端接口生成的時候這些方法被調用。 3. `clientGenerated(Interface, TopLevelClass, IntrospectedTable)`方法被調用 3. 模型方法:&lt;sup&gt;1&lt;/sup&gt; 1. `modelFieldGenerated`, `modelGetterMethodGenerated`, `modelSetterMethodGenerated` for each field in the class 2. `modelExampleClassGenerated(TopLevelClass, IntrospectedTable)` 3. `modelPrimaryKeyClassGenerated(TopLevelClass, IntrospectedTable)` 4. `modelBaseRecordClassGenerated(TopLevelClass, IntrospectedTable)` 5. `modelRecordWithBLOBsClassGenerated(TopLevelClass, IntrospectedTable)` 4. SQL映射方法:&lt;sup&gt;1&lt;/sup&gt; 1. `sqlMapXXXElementGenerated(XmlElement, IntrospectedTable)` - 當生成SQL映射的每個元素的時候這些方法被調用 2. `sqlMapDocumentGenerated(Document, IntrospectedTable)` 3. `sqlMapDocument(GeneratedXmlFile, IntrospectedTable)` 5. `contextGenerateAdditionalJavaFiles(IntrospectedTable)`方法被調用 6. `contextGenerateAdditionalXmlFiles(IntrospectedTable)`方法被調用 6. `contextGenerateAdditionalJavaFiles()`方法被調用 7. `contextGenerateAdditionalXmlFiles()`方法被調用 **注意事項:** &lt;sup&gt;1&lt;/sup&gt; -這些方法將被包裝的代碼生成器調用。如果您提供一個自定義的代碼生成器,那么這些方法將僅在自定義代碼生成調用它們時調用。 &lt;sup&gt;2&lt;/sup&gt; -Java客戶端的方法只有當配置Java客戶端生成器的時候會被調用。 ## 編寫插件 實現一個插件,最好的辦法是擴展`org.mybatis.generator.api.PluginAdapter`類并只需要覆蓋您需要的插件方法。 插件接口方法可用于修改默認生成的代碼,或添加其他生成的代碼。Examples of things 可以通過插件實現的是: * 給生成的方法添加自定義注解 * 給生成的類添加其他方法 * 給生成的XML文件添加其他元素 * 生成額外的Java文件 * 生成額外的XML文件 `contextXXX`方法總是會被調用。其他方法通過包代碼生成器調用 - 且僅當表中的一個規則將會生成一個特定元素時。例如,如果該表沒有主鍵, `modelPrimaryKeyClassGenerated(TopLevelClass, IntrospectedTable)`方法將不會被調用。 方法返回一個`boolean`可用于繞過生成代碼。如果任意這些方法返回`false` ,則相關的項目不會被添加到生成的代碼中。如果配置了多個插件,那么第一個插件從方法返回false將導致MyBatis Generator停止調用所有其他插件的方法。 如果您有一個關于插件的想法,可以自由的在用戶列表問有關的問題。我們在這里提供幫助!
                  <ruby id="bdb3f"></ruby>

                  <p id="bdb3f"><cite id="bdb3f"></cite></p>

                    <p id="bdb3f"><cite id="bdb3f"><th id="bdb3f"></th></cite></p><p id="bdb3f"></p>
                      <p id="bdb3f"><cite id="bdb3f"></cite></p>

                        <pre id="bdb3f"></pre>
                        <pre id="bdb3f"><del id="bdb3f"><thead id="bdb3f"></thead></del></pre>

                        <ruby id="bdb3f"><mark id="bdb3f"></mark></ruby><ruby id="bdb3f"></ruby>
                        <pre id="bdb3f"><pre id="bdb3f"><mark id="bdb3f"></mark></pre></pre><output id="bdb3f"></output><p id="bdb3f"></p><p id="bdb3f"></p>

                        <pre id="bdb3f"><del id="bdb3f"><progress id="bdb3f"></progress></del></pre>

                              <ruby id="bdb3f"></ruby>

                              哎呀哎呀视频在线观看