MybatisGenerator拡張機能に基づくモデルとマッパーとサービスとコントローラーのコードジェネレーター

MybatisGenerator拡張機能に基づくモデルとマッパーとサービスとコントローラーのコードジェネレーター

 

データベーステーブルに
基づいてMybatisModel&Mapper&Service&Controllerなどのコードを自動的に生成する新しくリリースされたコードジェネレーター。MybatisGeneratorに基づいて、JavaMapperとXmlMapperの実装を拡張します。一般的なビジネスWebサイトのバックエンドロジックは次のようになります。マウスをクリックするだけで実現でき
ますプロジェクトリンク:https//github.com/fenglibin/CodeGenerator

Javaコードジェネレータ

前書き

これは、データベーステーブル
基づくコードジェネレーターで、Model&Mapper&Service&ServiceImpl&Controllerなどのコードを自動的に生成します。
ユーザーはftlテンプレートを変更して、
主に日常の作業や練習を解決するために必要な基本的なコードブロックを生成できます。重複するワークロードコードの
現在、Mybatisの基礎となるコードの生成のみをサポートしています

注:このプロジェクトフォークは 、元の作成者zhaohaihaoのおかげで、https://github.com/zhaohaihao/CodeGeneratorからのものです。しかし、コードを使用していると、元のプロジェクトに多くの機能があるか、使用シナリオが自分に合わないことがわかったので、元のプロジェクトに基づいて大幅な調整を行いました。元の変更点は次のとおりです。1。tk.mybatisとpagehelperへの依存関係を削除し、関連するロジックを完全に実装します。これは、mybatisの元の実装の方が自分に適しているとまだ感じているためです。2。カスタムCustomizeJavaMapperGeneratorとCustomizeXMLMapperGeneratorは、生成する必要のある関数を柔軟にカスタマイズできます。3。条件付きページングクエリを実現し、Controlerレイヤーで結果の統一された返還を実現します。4。元々ユーザーの参加が必要だったいくつかの構成とカスタマイズを完全に削除します。 MybatisGenerator Standardの実装に従って、構成がより簡潔になり、コードの実装が簡単になります。5。ユニットテストの依存関係を増やして、生成されたコードのユニットテストを容易にします。

ディレクトリ構造

 
  1. ├── src

  2. │   ├── main

  3. │   │   ├── java

  4. │   │   │   └── com

  5. │   │   │   ├── codegen

  6. │   │   │   │   └── vo // 项目需要的代码

  7. │   │   │   │   ├── Page.java

  8. │   │   │   │   └── Result.java

  9. │   │   │   └── gencode // 存放生成的代码(该目录中的代码可以删除)

  10. │   │   │   └── generate

  11. │   │   │   ├── persistence

  12. │   │   │   │   ├── mapper

  13. │   │   │   │   │   └── SitesMapper.java

  14. │   │   │   │   └── model

  15. │   │   │   │   └── Sites.java

  16. │   │   │   ├── service

  17. │   │   │   │   └── SitesService.java

  18. │   │   │   └── web

  19. │   │   │   └── controller

  20. │   │   │   └── SitesController.java

  21. │   │   └── resources

  22. │   │   └── com //生成的mapper.xml(该目录中的内容可以删除)

  23. │   │   └── gencode

  24. │   │   └── generate

  25. │   │   └── persistence

  26. │   │   └── mapper

  27. │   │   └── SitesMapper.xml

  28. │   └── test

  29. │   ├── java

  30. │   │   └── com

  31. │   │   └── codegen

  32. │   │   ├── generator //根据Mybatis实现的代码和xml配置生成器

  33. │   │   │   ├── CountByConditionElementGenerator.java

  34. │   │   │   ├── CountByConditionMethodGenerator.java

  35. │   │   │   ├── CustomizeJavaMapperGenerator.java

  36. │   │   │   ├── CustomizeXMLMapperGenerator.java

  37. │   │   │   ├── DeleteByConditionElementGenerator.java

  38. │   │   │   ├── DeleteByConditionMethodGenerator.java

  39. │   │   │   ├── SelectByPageElementGenerator.java

  40. │   │   │   └── SelectByPageMethodGenerator.java

  41. │   │   ├── main

  42. │   │   │   └── CodeGeneratorMain.java //代码生成器的主类

  43. │   │   ├── service

  44. │   │   │   ├── CodeGeneratorConfig.java

  45. │   │   │   ├── CodeGenerator.java

  46. │   │   │   ├── CodeGeneratorManager.java

  47. │   │   │   └── impl

  48. │   │   │   ├── ControllerGenerator.java

  49. │   │   │   ├── ModelAndMapperGenerator.java

  50. │   │   │   └── ServiceGenerator.java

  51. │   │   ├── test //单元测试存的目录(该目录可以删除)

  52. │   │   │   ├── BaseTestCase.java

  53. │   │   │   ├── controller

  54. │   │   │   │   └── SitesControllerTest.java

  55. │   │   │   └── mapper

  56. │   │   │   └── SitesMapperTest.java

  57. │   │   └── util //相关工具类的存放目录

  58. │   │   ├── DataUtil.java

  59. │   │   ├── FileUtil.java

  60. │   │   ├── MethodUtil.java

  61. │   │   └── StringUtils.java

  62. │   └── resources

  63. │   ├── config //用于单元测试的配置()

  64. │   │   └── jdbc.properties

  65. │   ├── generator //controller和service的模板所在目录

  66. │   │   └── template

  67. │   │   ├── controller.ftl

  68. │   │   └── service.ftl

  69. │   ├── generatorConfig.properties //生成器核心配置文件

  70. │   └── spring //用于单元测试的配置

  71. │   ├── applicationContext-db-normal-context-test.xml

  72. │   └── spring-application-context-test.xml

使用説明書

実行

src/test/java ディレクトリを入力して 、クラスがジェネレータであるスタートアップアイテムを
見つけますCodeGeneratorMain
直接Run As Java Application 実行するだけ です。

設定を変更する

src/test/resources ディレクトリを入力し 
generatorConfig.properties ファイルを見つけ、 
対応するパラメータを変更して
から、特定の注釈情報について/src/test/java/com/codegen/service/CodeGeneratorConfig.java カテゴリを参照してください 

カスタムジェネレーター

ディレクトリsrc / test / java / com / codegen / generatorの下の関連する実装を参照してください

テンプレートスタイルの変更

必要なコントローラーとサービスのスタイルを生成する必要がある場合は
src/test/resources/generator/template ディレクトリを入力して 
、対応するftlファイル変更します。

データベーステーブル名のルール

テーブル名は、「table1」などの単一ワードのテーブル名、「my_table1」などのアンダースコアで区切られたテーブル名などはテストされません。

おすすめ

転載: blog.csdn.net/yucaifu1989/article/details/109199982